docker常用操作

镜像

# 拉取镜像
docker pull 镜像名:tag

# 查看本地镜像
docker images

# 删除本地镜像
docker rmi 镜像名

# 镜像导入导出
docker save -o 导出的路径 镜像ID
docker load -i 镜像文件

# 修改镜像名称
docker tag 镜像ID 镜像名:tag

容器

默认容器目录:/var/lib/docker

  1. 运行
    # 简单操作
    docker run 镜像ID|镜像名:tag
    
    # 常用参数
    docker run -d -p 宿主机端口:容器端口 [--restart=always] --name 容器名称 镜像ID|镜像名:tag
    
    • -d:后台运行
    • -p:端口映射
    • -i: 以交互模式运行容器,通常与 -t 同时使用
    • -t: 为容器重新分配一个伪输入终端,通常与 -i 同时使用
    • --name:指定容器名称
    • --restart:容器自启动
  2. 查看正在运行的容器
    docker ps -[qa]
    
    • -a:查看所有容器,包括面积没有运行的
    • -q:只查看容器ID
  3. 查看容器日志
    docker logs -f 容器ID
    
    • -f:可以滚动查看
  4. 进入到容器内部
    docker exec -it 容器ID bash
    
  5. 删除容器
    docker stop 容器ID
    docker stop $(docker ps -qa)
    
    docker rm 容器ID
    # 删除所有容器
    docker rm $(docker ps -qa)
    
  6. 从容器创建一个新的镜像
    docker commit -a "提交的镜像作者" -m "提交时的说明文字" 容器ID  镜像名:tag 
    

Docker应用

  1. 将宿主机的文件复制到容器内部
    docker cp 文件名称 容器ID:容器内部路径
    
  2. 数据卷
    将数据机的目录映射到容器目录
    1. 创建数据卷
      docker volume create 数据卷名称
      # 默认目录:/var/lib/docker/volumes/数据卷名称/_data
      
    2. 查看数据卷详细信息
      docker volume inspect 数据卷名称
      
    3. 查看全部数据卷
      docker volume ls
      
    4. 删除数据卷
      docker volume rm 数据卷名称
      
    5. 应用数据卷
      # 如果数据卷不存在,docker会自动创建,会将容器内部的文件存到本地
      docker run -v 数据卷名称:容器内部路径 镜像ID
      
      # 直接一个路径作为数据卷的存放位置
      docker run -v 路径:容器内部路径 镜像ID
      

自定义镜像

新建Dockerfile文件

FROM 镜像
COPY 宿主机路径 目标路径
WORKDIR 工作目录路径
CMD (在docker run时运行, 而非docker build, 仅最后一个生效)
# RUN rm /bin/sh && ln -s /bin/bash /bin/sh
RUN (docker build 过程中要运行的命令)
ENV key1=value1
ENV key2=value2
VOLUME ["run的时候没有使用-v绑定匿名卷的话,会在/var/lib/docker/volume自动创建目录", "路径2"]
CMD shell命令
docker build -t 镜像名 . 
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容