docker常用命令

docker常用命令

  1. 从服务拉取镜像

    # docker pull [镜像名称]
    docker pull nginx
    
  2. 查看镜像

    docker images
    
  3. 删除镜像

    # docker rmi [镜像名称]:[镜像版本]
    docker rmi nginx:latest
    
  4. 推送镜像到服务

    # docker push [镜像名称]
    docker push nginx
    
  5. 保存镜像为一个压缩包

    # docker save -o [保存的目标文件名称] [镜像名称]
    docker save -o nginx.tar.gz nginx
    
  6. 加载压缩包为镜像

    # docker load -i [压缩包]
    docker load -i nginx.tar
    
  7. docker run:创建并运行一个容器,处于运行状态

    docker run --name mynginx -p 80:80 -d nginx
    
    • docker run :创建并运行一个容器
    • –name : 给容器起一个名字,比如叫做mynginx
    • -p :将宿主机端口与容器端口映射,冒号左侧是宿主机端口,右侧是容器端口
    • -d:后台运行容器
    • nginx:镜像名称,例如nginx
  8. 让一个运行的容器暂停

    # docker pause [容器名称]
    docker pause mynginx
    
  9. 让一个容器从暂停状态恢复运行

    # docker unpause [容器名称]
    docker unpause mynginx
    
    
  10. 停止一个运行的容器

    # docker stop [容器名称]
    docker stop mynginx
    
  11. 让一个停止的容器再次运行

    # docker start [容器名称]
    docker start mynginx
    
  12. 删除一个容器

    # docker rm [容器名称]
    docker rm mynginx
    # 强制删除 docker rm -f [容器名称] 
    docker rm -f mynginx
    
  13. 进入容器

    docker exec -it mynginx bash
    

    命令解读:

    • docker exec :进入容器内部,执行一个命令

    • -it : 给当前进入的容器创建一个标准输入、输出终端,允许我们与容器交互

    • mynginx :要进入的容器的名称

    • bash:进入容器后执行的命令,bash是一个linux终端交互命令

  14. 查看容器日志

    # docker logs [容器名称]
    docker logs mynginx
    # 持续查看日志 docker logs -f [容器名称]
    docker logs -f mynginx
    
  15. 查看容器状态:

    docker ps
    docker ps -a # 查看所有容器,包括已经停止的
    
  16. 数据卷操作命令

    • 数据卷操作的基本语法如下:
    • docker volume [COMMAND]
    • docker volume命令是数据卷操作,根据命令后跟随的command来确定下一步的操作,如下以数据卷名称为html为例:
    # create 创建一个volume
    docker volume create html
    # inspect 显示一个或多个volume的信息
    docker volume inspect html
    # ls 列出所有的volume
    docker volume ls 
    # prune 删除未使用的volume
    docker volume prune
    # rm 删除一个或多个指定的volume
    docker volume rm html
    
  17. Dockerfile文件编写及镜像构建

    # 指定基础镜像
    FROM ubuntu:16.04
    # 配置环境变量,JDK的安装目录
    ENV JAVA_DIR=/usr/local
    
    # 拷贝jdk和java项目的包
    COPY ./jdk8.tar.gz $JAVA_DIR/
    COPY ./eureka-server-1.0-SNAPSHOT.jar /tmp/eurekaserver.jar
    
    # 安装JDK
    RUN cd $JAVA_DIR \
     && tar -xf ./jdk8.tar.gz \
     && mv ./jdk1.8.0_144 ./java8
    
    # 配置环境变量
    ENV JAVA_HOME=$JAVA_DIR/java8
    ENV PATH=$PATH:$JAVA_HOME/bin
    
    # 暴露端口
    EXPOSE 8080
    # 入口,java项目的启动命令
    ENTRYPOINT java -jar /tmp/eurekaserver.jar
    
    • 镜像构建
    docker build -t eureka:1.0 .
    
  18. docker-compose

    • docker-compose.yml配置文件
    version: "3.2"
    
    services:
      nacos:
        image: nacos/nacos-server
        environment:
          MODE: standalone
        ports:
          - "8848:8848"
      mysql:
        image: mysql:5.7.25
        environment:
          MYSQL_ROOT_PASSWORD: root
        volumes:
          - "$PWD/mysql/data:/var/lib/mysql"
          - "$PWD/mysql/conf:/etc/mysql/conf.d/"
      userservice:
        build: ./userservice
      orderservice:
        build: ./orderservice
      gateway:
        build: ./gateway
        ports:
          - "8080:8080"
    
    • docker-compose常用命令
    # 构建镜像启动容器 
    docker-compose up -d
    # 查看日志
    docker-compose log -f
    # 停止容器
    docker-compose down
    
  19. docker registry 私有仓库搭建

    # docker-compose.yml
    version: '3.0'
    services:
      registry:
        image: registry
        volumes:
          - ./registry-data:/var/lib/registry
      ui:
        image: joxit/docker-registry-ui:static
        ports:
          - 8080:80
        environment:
          - REGISTRY_TITLE=pizm私有仓库
          - REGISTRY_URL=http://registry:5000
        depends_on:
          - registry
    
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值