容器的創(chuàng)建
docker run -p 8888:8888 paddlepaddle/book
docker run --name paddlelearning -v $PWD/book:/usr/src/ -itd docker.paddlepaddle.org/paddle:latest /bin/bash
啟動(dòng)一個(gè)名為paddlelearning的container, 并進(jìn)入交互模式(exit或者bye退出) 鏡像使用docker.paddlepaddle.org/paddle:latest, 將主機(jī)的$PWD/book文件掛載到該容器/user/sec/目錄,
-d 后臺(tái)模式 -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
在上一條命令的基礎(chǔ)上茉帅, -w 進(jìn)入到容器的/usr/src/01.fit_a_line目錄鲫懒, 并執(zhí)行python train.py 命令
docker進(jìn)入
http://blog.csdn.net/u010397369/article/details/41045251
docker命名
http://www.dockerinfo.net/3689.html
docker attach # 打印容器終端輸出
docker exec # 在容器里執(zhí)行一個(gè)命令,可以執(zhí)行bash進(jìn)入交互式
- nsenter
nsenter可以訪問(wèn)另一個(gè)進(jìn)程的名稱空間掠拳。所以為了連接到某個(gè)容器我們還需要獲取該容器的第一個(gè)進(jìn)程的PID。可以使用docker inspect命令來(lái)拿到該P(yáng)ID萧落。
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 容器內(nèi)安裝vim(默認(rèn)是沒(méi)有的, 可以安裝好以后重新打包一個(gè)鏡像)
### 文件的復(fù)制
1洗贰, 從 主機(jī)(host) 到 container
docker run -v /path/to/hostdir:/mnt $container 掛載主機(jī)文件到container內(nèi)
cp /mnt/sourcefile /path/to/destfile 容器內(nèi)部拷貝
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 到 主機(jī)(host)
使用 docker cp 命令
docker cp <containerId>:/file/path/within/container /host/path/target