Docker文件迁移

容器的创建

docker run -p 8888:8888 paddlepaddle/book

docker run --name paddlelearning -v $PWD/book:/usr/src/ -itd  docker.paddlepaddle.org/paddle:latest /bin/bash

启动一个名为paddlelearning的container, 并进入交互模式(exit或者bye退出) 镜像使用docker.paddlepaddle.org/paddle:latest, 将主机的$PWD/book文件挂载到该容器/user/sec/目录,
-d 后台模式 -i 交互 -t 容器的伪终端

docker run --name paddlelearning -v $PWD/book:/usr/src/  -w /usr/src/01.fit_a_line  -itd  docker.paddlepaddle.org/paddle:latest python train.py 

在上一条命令的基础上, -w 进入到容器的/usr/src/01.fit_a_line目录, 并执行python train.py 命令

docker进入

http://blog.csdn.net/u010397369/article/details/41045251

docker命名

http://www.dockerinfo.net/3689.html

docker attach # 打印容器终端输出

docker exec # 在容器里执行一个命令,可以执行bash进入交互式

  • nsenter

nsenter可以访问另一个进程的名称空间。所以为了连接到某个容器我们还需要获取该容器的第一个进程的PID。可以使用docker inspect命令来拿到该PID。

docker inspect命令使用如下 获取指定容器的PID:

sudo docker inspect --help

nsenter --target $PID --mount --uts --ipc --net --pid

  • docker exec

sudo docker exec --help

sudo docker exec -it 775c7c9ee1e1 /bin/bash
·```
docker exec -it CONTAINER_NAME /bin/bash


apt-get install vim  容器内安装vim(默认是没有的, 可以安装好以后重新打包一个镜像)

### 文件的复制

1, 从 主机(host) 到 container

docker run -v /path/to/hostdir:/mnt $container 挂载主机文件到container内

cp /mnt/sourcefile /path/to/destfile  容器内部拷贝


    Get container name or short container id :

    docker ps

    Get full container id

    docker inspect -f '{{.Id}}' SHORT_CONTAINER_ID-or-CONTAINER_NAME

    copy file :

    sudo cp path-file-host /var/lib/docker/aufs/mnt/FULL_CONTAINER_ID/PATH-NEW-FILE



EXAMPLE :

$docker ps

CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES

d8e703d7e303 solidleon/ssh:latest /usr/sbin/sshd -D cranky_pare

$docker inspect -f '{{.Id}}' cranky_pare

or

$docker inspect -f '{{.Id}}' d8e703d7e303

d8e703d7e3039a6df6d01bd7fb58d1882e592a85059eb16c4b83cf91847f88e5

 $sudo cp file.txt /var/lib/docker/aufs/mnt/d8e703d7e3039a6df6d01bd7fb58d1882e592a85059eb16c4b83cf91847f88e5/root/file.txt

2 从 container 到 主机(host)

使用 docker cp 命令

    docker cp :/file/path/within/container /host/path/target
  

你可能感兴趣的:(Docker文件迁移)