mirror of
https://github.com/yeasy/docker_practice.git
synced 2025-08-02 22:11:38 +00:00
@@ -5,12 +5,12 @@
|
||||
`docker attach` 是 Docker 自带的命令。下面示例如何使用该命令。
|
||||
|
||||
```bash
|
||||
$ sudo docker run -idt ubuntu
|
||||
$ docker run -idt ubuntu
|
||||
243c32535da7d142fb0e6df616a3c3ada0b8ab417937c853a9e1c251f499f550
|
||||
$ sudo docker ps
|
||||
$ docker ps
|
||||
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
|
||||
243c32535da7 ubuntu:latest "/bin/bash" 18 seconds ago Up 17 seconds nostalgic_hypatia
|
||||
$sudo docker attach nostalgic_hypatia
|
||||
$ docker attach nostalgic_hypatia
|
||||
root@243c32535da7:/#
|
||||
```
|
||||
|
||||
@@ -20,7 +20,7 @@ root@243c32535da7:/#
|
||||
#### 安装
|
||||
`nsenter` 工具在 util-linux 包2.23版本后包含。
|
||||
如果系统中 util-linux 包没有该命令,可以按照下面的方法从源码安装。
|
||||
```
|
||||
```bash
|
||||
$ cd /tmp; curl https://www.kernel.org/pub/linux/utils/util-linux/v2.24/util-linux-2.24.tar.gz | tar -zxf-; cd util-linux-2.24;
|
||||
$ ./configure --without-ncurses
|
||||
$ make nsenter && sudo cp nsenter /usr/local/bin
|
||||
@@ -59,9 +59,9 @@ $ nsenter --target $pid --mount --uts --ipc --net --pid -- /usr/bin/env \
|
||||
下面给出一个完整的例子。
|
||||
|
||||
```bash
|
||||
$ sudo docker run -idt ubuntu
|
||||
$ docker run -idt ubuntu
|
||||
243c32535da7d142fb0e6df616a3c3ada0b8ab417937c853a9e1c251f499f550
|
||||
$ sudo docker ps
|
||||
$ docker ps
|
||||
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
|
||||
243c32535da7 ubuntu:latest "/bin/bash" 18 seconds ago Up 17 seconds nostalgic_hypatia
|
||||
$ PID=$(docker-pid 243c32535da7)
|
||||
|
@@ -2,24 +2,24 @@
|
||||
|
||||
###导出容器
|
||||
如果要导出本地某个容器,可以使用 `docker export` 命令。
|
||||
```
|
||||
```bash
|
||||
$ docker ps -a
|
||||
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
|
||||
7691a814370e ubuntu:14.04 "/bin/bash" 36 hours ago Exited (0) 21 hours ago test
|
||||
$ sudo docker export 7691a814370e > ubuntu.tar
|
||||
$ docker export 7691a814370e > ubuntu.tar
|
||||
```
|
||||
这样将导出容器快照到本地文件。
|
||||
|
||||
###导入容器快照
|
||||
可以使用 `docker import` 从容器快照文件中再导入为镜像,例如
|
||||
```
|
||||
$ cat ubuntu.tar | sudo docker import - test/ubuntu:v1.0
|
||||
```bash
|
||||
$ cat ubuntu.tar | docker import - test/ubuntu:v1.0
|
||||
$ docker images
|
||||
REPOSITORY TAG IMAGE ID CREATED VIRTUAL SIZE
|
||||
test/ubuntu v1.0 9d37a6082e97 About a minute ago 171.3 MB
|
||||
```
|
||||
此外,也可以通过指定 URL 或者某个目录来导入,例如
|
||||
```
|
||||
```bash
|
||||
$ docker import http://example.com/exampleimage.tgz example/imagerepo
|
||||
```
|
||||
|
||||
|
@@ -5,8 +5,8 @@
|
||||
例如对于上一章节中只启动了一个终端的容器,用户通过 `exit` 命令或 `Ctrl+d` 来退出终端时,所创建的容器立刻终止。
|
||||
|
||||
终止状态的容器可以用 `docker ps -a` 命令看到。例如
|
||||
```
|
||||
sudo docker ps -a
|
||||
```bash
|
||||
docker ps -a
|
||||
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
|
||||
ba267838cc1b ubuntu:14.04 "/bin/bash" 30 minutes ago Exited (0) About a minute ago trusting_newton
|
||||
98e5efa7d997 training/webapp:latest "python app.py" About an hour ago Exited (0) 34 minutes ago backstabbing_pike
|
||||
|
Reference in New Issue
Block a user