docker images
docker search 镜像名
docker search --filter "is-official=true" 镜像
docker search --filter stars=stars数量 镜像名
docker pull 镜像名:tag
docker tag 旧镜像名 新镜像名
eg: docker tag centos:7 mycentos:1
docker rmi IMAGE_ID
docker run -itd --name=CONTAINER_NAME IMAGE_NAME:tag [COMMAND] [ARG...]
CONTAINER_NAME:容器名
IMAGE_NAME: 镜像名
tag:镜像名的tag
COMMAND: 容器执行的命令,可覆盖CMD,ENTRYPOINT
ARG:命令所需的参数
docker ps -a
docker ps
docker stop CONTAINER_ID / CONTAINER_NAME
docker stop $(docker ps -a -q)
docker start $(docker ps -a -q)
docker start CONTAINER_ID / CONTAINER_NAME
docker restart CONTAINER_ID / CONTAINER_NAME
docker rm CONTAINER_ID / CONTAINER_NAME
docker rmi -f CONTAINER_ID / CONTAINER_NAME
docker inspect CONTAINER_ID / CONTAINER_NAME
docker exec -it CONTAINER_ID /bin/bash
注:路径需要绝对路径, ":"之间不能有空格
docker cp 宿主机本地路径 容器名字/容器ID:容器路径
docker cp 容器名字/容器ID:容器路径 宿主机本地路径
docker run -itd -v 宿主机路径:容器路径 镜像名:tag
参考:[https://docs.docker.com/engine/reference/commandline/run/]
构建镜像:
docker commit [-a ""] [-m ""] CONTAINER_ID IMAGE_NAME:tag
-a:标注作者
-m:说明注释
CONTAINER_ID:基于哪个容器的ID
FROM:基于哪个镜像;
MAINTAINER:注明作者;
COPY:复制文件进入镜像(只能用相对路径,不能用绝对路径);
ADD:复制文件进入镜像,假如文件是.tar.gz文件会解压;
WORKDIR:指定工作目录,假如路径不存在会创建路径;
ENV:设置环境变量;
EXPOSE:暴露容器端口;
VOLUME:
用于容器数据挂载到宿主机;
使用 --volumes-from 实现容器与容器之间volume共享;
eg:
docker run -itd -p 8080:80 -v /usr/local/nginx/html:/usr/local/nginx/html --name nginx1 mycentos:nginx /usr/local/nginx/sbin/nginx -g "daemon off;"
docker run -itd -p 8081:80 --volumes-from nginx1 --name nginx2 mycentos:nginx /usr/local/nginx/sbin/nginx -g "daemon off;"
docker run -itd -p 8082:80 --volumes-from nginx1 --name nginx3 mycentos:nginx /usr/local/nginx/sbin/nginx -g "daemon off;"
RUN:在构建镜像的时候执行,作用于镜像层面;
ENTRYPOINT:在容器启动的时候执行,作用于容器层,dockerfile里有多条时只允许执行最后一条;
CMD:
注:ENTRYPOINT优先于CMD执行;
命令格式:
eg:
shell命令格式:
RUN yum install -y net-tools
exec命令格式:
RUN [ "yum","install" ,"-y" ,"net-tools"]
构建:
docker build -t IMAGE_NAME:tag [dockerfile路径]
IMAGE_NAME:新建的镜像名
tag:新建镜像的tag
参考:[https://docs.docker.com/engine/reference/builder/]
Nginx镜像启动注意事项:
/usr/local/nginx/sbin/nginx
原文:https://www.cnblogs.com/coder-zyc/p/14608939.html