zoukankan      html  css  js  c++  java
  • docker常用命令

    docker 环境 CentOS 8.1

    Docker 修改镜像源地址
    1. Docker 官方中国区
    https://registry.docker-cn.com
    
    1. 网易
    http://hub-mirror.c.163.com
    
    1. ustc --中国科学技术大学
    https://docker.mirrors.ustc.edu.cn
    

    /etc/docker/daemon.json

    如果没有daemon.json文件 创建

    { 
    "registry-mirrors": ["https://docker.mirrors.ustc.edu.cn"] 
    }
    

    重启docker

    systemctl restart docker
    
    启动 docker
    systemctl start docker
    
    守护进程重启
    sudo systemctl daemon-reload
    
    重启docker服务
    systemctl restart  docker
    
    重启docker服务
     sudo service docker restart
    
    关闭docker 服务

    docker service docker stop

    关闭docker
    docker systemctl stop docker
    
    拉取镜像
     docker pull tomcat:jdk8-openjdk 
    
     docker pull tomcat:8.5.55-jdk8-openjdk
    
    查看镜像
      docker images  
    
    显示正在运行的容器:
    [root@localhost HMK]# docker ps
    显示所有容器,包括未运行的: 
    [root@localhost HMK]# docker ps -a
    
    运行镜像
    docker run -d --name tomcat_test -p 8088:8080  7254ff7719c0
    docker run -d --name tomcat_test -v /etc/localtime:/etc/localtime -p 2080:8080 tomcat:latest
    
    docker run -d --name tomcat_contract -p 8088:8080 -v  /home/tomcat_contract/conf:/usr/local/tomcat/conf -v  /home/tomcat_contract/webapps:/usr/local/tomcat/webapps -v  /home/tomcat_contract/logs/:/usr/local/tomcat/logs -v  /home/tomcat_contract/logsRoot/:/usr/local/tomcat/logsRoot 7254ff7719c0
    

    –name 容器名称
    -p 8088:8080 8088 是宿主机端口 8080是tomcat容器端口 8080映射到2080
    tomcat:latest 镜像名称及版本
    -v /etc/localtime:/etc/localtime 容器使用宿主机时间、时区

    -v 挂载目录 /home/tomcat/conf 宿主机的配置目录,/usr/local/tomcat/conf 容器的目录

    :前面是宿主机的目录,后面是容器里面的目录

    -d:表示指定容器后台运行

    8e4c7e070ba2 镜像id

    进入容器
     docker exec -it mysql_docker /bin/bash
      docker exec -it mcyl_test0 /bin/bash
       docker exec -it zilliz_search_images_demo /bin/bash
    

    当前目录还是在tomcat镜像生成的容器目录下,可以使用:ctrl+p+q不退出容器的方式返回到宿主机目录下

    出容器
    ctrl+p+q
    

    使用:ctrl+p+q不退出容器的方式返回到宿主机目录下

    重启容器

    docker restart 容器ID

    docker restart 54bad744146a
    
    停止容器

    docker stop 容器id

    docker stop 31290cf1cc00
    
    启动一个已经停止的容器实例

    docker start 容器名称 或者 容器id tomcat_contract

    docker start 31290cf1cc00
    
    删除容器

    可使用 -f 参数强制删除容器

    docker rm mcyl_test0
    
    查看所有的容器
    docker ps -a 
    
    查看运行中的容器
    docker ps 
    

    liunx 命令

    重命名文件夹

    mv webapps webapps2
    
    mv webapps.dist/ webapps
    
    使用docker commit命令将修改后的容器生成新的镜像

    docker commit命令详解:
    作用:将运行着的容器映射成新的镜像
    格式: docker commit -a='作者-这个随意写' -m='‘修改内容--随意写' 容器名称或者ID 新生成镜像的名称
    例子:

    docker commit -a='lzhang2019' -m='修改主页404错误' e8a903b0d543  tomcat-8.5.55-jdk8-openjdk-dev:v0.1
    
    导出images
    保存镜像

    docker save 命令 将镜像保存成一个文件。

    docker save -o tomcat-8.5.55-jdk8-openjdk-dev-v0.1.tar tomcat-8.5.55-jdk8-openjdk-dev:v0.1
    

    -o 输出文件名称

    tomcat-8.5.55-jdk8-openjdk-dev:v0.1 镜像的名称和tag

    2)我们还可以同时将多个 image 打包成一个文件,比如下面将镜像库中的 postgresmongo 打包:

    docker save -o images.tar postgres:9.6 mongo:3.4
    
    载入镜像

    使用 docker load 命令则可将这个镜像文件载入进来。

    docker load < hangge_server.tar
    
    从容器拷贝文件到宿主机

    docker cp 容器名:容器中要拷贝的文件名及其路径 要拷贝到宿主机里面对应的路径

    拷贝容器中 tomcat的conf目录 到 宿主机 的 home/tomcat 目录下

    docker cp 16d0e13769a8:/usr/local/tomcat/conf /home/tomcat_contract/
    

    拷贝容器中 tomcat的webapps目录 到 宿主机 的 home/tomcat 目录下

    docker cp 827e39c506b1:/usr/local/tomcat/webapps /home/tomcat_contract/
    
    删除images

    使用 docker load 命令则可将这个镜像文件载入进来。

     docker rmi 6e07337dc2a2
    
    实时日志
    docker logs -f --tail=100  mcyl_test0
    
    查看容器的详细信息
    docker inspect mysql_docker
    docker inspect mcyl_test0
    
    Dockerfile 创建镜像
    docker build -t runoob-ubuntu:v1 .
    
    docker build -t mcyl-vue:v1.0 .
    

    用户定义的网桥和默认网桥之间区别

    1、用户定义的网桥可在容器之间提供自动DNS解析。

    2、用户定义的桥可提供更好的隔离。

    3、容器可以随时随地从用户定义的网络连接和分离。

    4、每个用户定义的网络都会创建一个可配置的网桥

    5、默认网桥网络上的链接容器共享环境变量。

    创建用户定义的网桥网络

    使用该docker network create命令。

    $ docker network create my-net
    
    删除用户定义的网桥网络

    使用该docker network rm命令。如果容器当前已连接到网络, 请先断开它们的连接

    $ docker network rm my-net
    
    将容器连接到用户定义的桥

    创建新容器时,可以指定一个或多个--network标志。本示例将Nginx容器连接到my-net网络。它还将容器中的端口80发布到Docker主机上的端口8080,以便外部客户端可以访问该端口。连接到my-net 网络的任何其他容器都可以访问该my-nginx容器上的所有端口,反之亦然。

    $ docker create --name my-nginx 
      --network my-net 
      --publish 8080:80 
      nginx:latest
    

    要将运行中的容器连接到现有的用户定义的网桥,请使用以下 docker network connect命令。以下命令将一个已经在运行的my-nginx容器连接 到一个已经存在的my-net网络:

    $ docker network connect my-net my-nginx 
      docker network connect my-net mysql_docker
      docker network connect my-net mcyl_test0
    
    断开容器与用户定义的桥的连接

    要将运行中的容器与用户定义的网桥断开连接,请使用以下docker network disconnect命令。以下命令将my-nginx 容器与my-net网络断开连接。

    $ docker network disconnect my-net my-nginx
    
  • 相关阅读:
    Atitit.Java exe bat  作为windows系统服务程序运行
    Atitit. Object-c语言 的新的特性  attilax总结
    Atitit. Object-c语言 的新的特性  attilax总结
    Atitit。Time base gc 垃圾 资源 收集的原理与设计
    Atitit。Time base gc 垃圾 资源 收集的原理与设计
    Atitit.go语言golang语言的新的特性  attilax总结
    Atitit.go语言golang语言的新的特性  attilax总结
    Atitit.pdf 预览 转换html attilax总结
    Atitit.pdf 预览 转换html attilax总结
    Atitit.office word  excel  ppt pdf 的web在线预览方案与html转换方案 attilax 总结
  • 原文地址:https://www.cnblogs.com/z_lb/p/13060585.html
Copyright © 2011-2022 走看看