Docker的操作指令


容器操作

新建容器:

sudo docker run -t -i elezar/caffe:cpu /bin/bash
-v  
-p 端口映射
-d

退出容器

按ctrl+D 或 exit 退出当前容器。 


查看正在运行的容器

docker ps 

查看所有容器

docker ps -a


启动一个已有容器

docker start 91951c2afd5f

停止容器

docker stop 91951c2afd5f


重启容器

退出后,如果你想重新使用之前的容器,可以通过以下命令重启,回到之前的状态:
docker start container_ID
docker attach container_ID

保存容器

docker commit c5f24e953610 [保存镜像名字]


删除指定容器

docker rm container_ID/name

删除所有已经停止的容器

docker rm $(docker ps -a -q)

杀死所有正在运行的容器

docker kill $(docker ps -a -q)

将本地文件拷贝到容器中

docker cp [拷贝文件名] [容器ID]:容器中文件路径

将容器中文件或文件夹拷贝到本机

docker cp a77a72ac178c:/var/www/html /var/www/


镜像操作

安装镜像

docker pull elezar/caffe:cpu

测试安装

$ docker run -ti elezar/caffe:cpu caffe --version

查看所有镜像

docker images

将本地文件映射到新建容器中

$ docker run -ti -v /Users/xiamin/Downloads/mtcnn-face-detect:/mtcnn elezar/caffe:cpu

删除指定镜像

docker rmi image_name


Volume

-v 容器映射

-v [本地目录]:[容器内目录]  
-volumes-from             从另一个容器引入数据,多个容器挂载同样数据
docker create -v $PWD/data:/var/mydata --name [容器名] ubantu
docker run --volume-from data_container


Registry镜像仓库

daemon 守护程序

docker search ***

docker pull ***


上传到docker hub

docker login

docker push ***

镜像复制重命名

docker tag [原镜像名] [复制后镜像名]



国内仓库

阿里云
daocloud
时速云


Dockerfile

FROM …base image
MAINTAINER … 谁写的
CMD ….. 命令行
RUN apt-get install … 执行命令
COPY...拷贝文件
ADD…. 添加文件(远程)
ENTRYPOINT ["","",""] 容器入口
EXPOSE 80 暴露端口
RUN sed -i 's/archive.ubantu.com/mirr' /etc/apt/source.list 用加速镜像
WORKDIR 指定路径
ENV 设定环境变量
USER指定用户
VOLUME mount point


创建image

将当前目录下的Dockerfilebuild为image:
docker build -t [image名称] .



底层知识

镜像分层存储

你可能感兴趣的:(自主学习)