Docker简易操作
Docker简易操作
1、启动docker
sudo docker run [OPTIONS] IMAGE [COMMAND] [ARG...]
sudo docker run -d -p 8009:80 jimchen:nginx-image-test
sudo docker run --gpus 1 -it --rm --shm-size="32g" -v /data/local_dir/:/docker_dir:rw -entrypoint="/bin/bash" docker name:dockertag
2、进⼊docker容器
sudo docker start anaconda
#运⾏容器anaconda,anaconda是容器名
sudo docker exec -it 126 /bin/bash
#注:126为容器ID前3位
sudo docker exec -it anaconda /bin/bash
#/bin/bash指在容器anaconda中运⾏交互式终端
3、停止一个正在运行中的容器
docker stop -t=(5)s 126 #延时关闭5s
4、直接关闭正在运行的容器
docker kill
5、重启一个容器
docker restart 126
6、查看当前运行中的容器
docker ps
7、为镜像打个标签
docker tag 860c279d2fec runoob/centos:dev
#镜像ID:860c279d2fec
8、构建镜像
docker build -t runoob/centos:6.7 .
# 注意最后的点不能缺少,⽣成完:runoob/centos为REPOSITORY,6.7为TAG
使⽤新的镜像来创建容器
docker run -t -i runoob/centos:6.7 /bin/bash
sudo docker run -t -i pytorch/pytorch:1.3-cuda10.1-cudnn7-devel /bin/bash
docker run --gpus all --shm-size="8g" -it --rm --entrypoint="/bin/bash" docker.hobot.cc/imagesys/mx-app-alg:v0.5 (镜像)
9、获取镜像
sudo docker pull NAME[:TAG]
sudo docker pull centos:latest
10、删除镜像
⾸先删除容器,再删除镜像
docker ps -a
docker rm id #删除镜像
docker ps -a
docker images
docker rmi id
注:删除前需保证容器是停⽌的
11、导出镜像
docker save -o pytorch_latest.tar pytorch/pytorch:latest:
导出将需要花费⼀点时间,导出成功后将.tar拷到离线主机导⼊即可
12、保存镜像
docker commit -a “yaohui” containerID imageNAME
13、启动容器并执行
docker run -it --name="anaconda" -p 8888:8888 continuumio/anaconda3 /bin/bash
参数解释
- -it是启⽤交互式终端,
- --name="anaconda"是给容器起名字,-
- p 8888:8888是将容器的8888端⼝映射到本地的8888端⼝,便于访问jupyter
docker run -it --name="anaconda_2" -p 8888:8888 -v `pwd`:/root continuumio/anaconda3 /bin/bash
参数-v将当前⽬录pwd挂载到容器的/root⽬录,容器中对/root所做的改动会同步到主机。
Talk is cheap. Show me the code