docker常用命令
使用dockerfile创建镜像 docker build -t imagename .
(. 代表将当前路径作为构建上下文)
查看镜像 docker images
删除镜像 docker rmi image_name
使用镜像创建容器 docker run -t docker_name .
(最后一个.符号不能丢)
查看容器 docker ps -a
运行容器 docker start dockerID
停止运行 docker stop dockerID
删除容器 docker rm dockerID
进入容器 docker exec -it docker_name /bin/bash
退出容器 exit
docker使用中遇到的问题
- 使用镜像创建容器进入可交互终端不用执行dockerfile中默认cmd
docker run -i -t your_image_name /bin/bash
- 修改已存在容器中的件内容
#将容器中的文件拷贝出来
sudo docker cp 容器ID:/etc/mysql/my.cnf /home/tom/
#将容器中的文件拷贝回去
sudo docker cp /home/tom/my.cnf 容器ID:/etc/mysql/
- dockerfile中需要打开指定文件位置再操作时
RUN cd /filename && next command
使用换行使代码简洁直观,换行需要在前一条命令后加 \
RUN cd /filename \
&& next command
- ImportError: unique_cuda.cpython-37m-x86_64-linux-gnu.so: undefined symbol: _ZN6caffe28T
由于在ubuntu中编译过swig -python -c++ pafprocess.i && python setup.py build_ext --inplace && python setup.py install 文件中已有对应文件 所以在创建docker镜像时再编译没有用 需要将之前编译产生的文件删除 在容器中重新编译才行