• docker系列(1) - docker环境篇


    1. docker环境

    1.1 docker安装

    #CentOS 6
    rpm -iUvh http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm
    yum update -y
    yum -y install docker-io
    service docker start
    chkconfig docker on
    
    #CentOS 7、Debian、Ubuntu
    curl -sSL https://get.docker.com/ | sh
    systemctl start docker
    systemctl enable docker.service
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11

    1.2 阿里云镜像加速器

    在拉取镜像时,使用阿里云镜像速度更快点。

    使用淘宝账号登录阿里云:
    在这里插入图片描述

    创建个人实例。
    在这里插入图片描述

    然后在镜像工具,镜像加速器可以看到。
    在这里插入图片描述

    将下面的这行脚本直接拷贝到linux中执行,即可。
    https://xxxxxx.mirror.aliyuncs.com每个人注册后获取到的地址是不一样的。

    sudo mkdir -p /etc/docker
    sudo tee /etc/docker/daemon.json <<-'EOF'
    {
      "registry-mirrors": ["https://xxxxxx.mirror.aliyuncs.com"]
    }
    EOF
    sudo systemctl daemon-reload
    sudo systemctl restart docker
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8

    1.2 docker管理工具(portainer)

    #创建文件夹
    mkdir -p /docker/portainer/{data,public}
    
    #中文汉化
    #注意安装前不要导入汉化包,否则无法注册。
    https://www.quchao.net/Portainer-CN.html
    
    # 运行
    docker run -d -p 9000:9000 --restart=always \
    -v /var/run/docker.sock:/var/run/docker.sock \
    --privileged=true \
    portainer/portainer-ce
    
    # 初始化登录地址
    http://192.168.80.250:9000
    
    admin
    111111111111  (12位)
    
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19

    在这里插入图片描述

    控制面板
    在这里插入图片描述

    容器管理
    在这里插入图片描述

    关于portainer来管理docker,非常方便,它几乎可以取代命令行的所有操作,有兴趣的可以专门去研究研究。

    1.3 docker网络

    1.3.1 网络说明

    首先,我们需要创建一个自定义的网络,这样我们才可以使用Docker为容器分配固定IP。可以使用下面的命令来创建自定义网络:
    如果只使用docker network create pub_network创建网络,则容器启动时,会自动分配动态的IP地址和网关。

    docker network create --subnet=192.168.0.0/16 pub_network
    
    • 1

    这个命令将创建名为“mynet”的网络,并指定它的子网为“192.168.0.0/16”。
    接下来,我们需要为需要分配固定IP的容器指定IP地址。可以使用下面的命令来启动一个容器,并为它分配固定IP:

    docker run --name=ubuntu --net=pub_network --ip=192.168.0.101 -itd ubuntu:latest
    
    • 1

    这个命令将启动一个名为“ubuntu”的容器,并将它加入到自定义网络“mynet”中。同时,它还为这个容器分配了固定IP地址“192.168.0.101”。
    现在,我们可以验证容器的IP地址是否生效。可以使用下面的命令来查看容器的IP地址:

    docker inspect ubuntu | grep IPAddress
    
    • 1

    这个命令将输出包含容器IP地址的行,从而验证我们刚才为容器分配的固定IP地址是否生效了。
    最后,需要注意的是,我们可以为同一个网络中的多个容器分配不同的IP地址,但IP地址必须在同一个子网中。

    #将容器1添加到my_network网络中
    docker network connect my_network container1
    #从网络中删除容器1
    docker network disconnect my_network container1
    #使用Bridge模式进行网络配置
    docker run -it --name my_container --net bridge
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6

    1.3.2 创建指定网关的网络

    重点:指定网关和固定的网段之后,在启动容器中指定IP地址,即可为容器分配静态IP,这样容器重启后IP地址不会变更。
    SpringBoot这类的应用项目,在连接数据库的配置文件中配置MySQL的连接时,就可以直接使用MySQL的静态IP地址,这样重启MySQL后也不会导致IP地址变更。

    docker network create --subnet 192.168.10.0/16 --gateway 192.168.10.1 pub_network 
    
    • 1
  • 相关阅读:
    通过虚拟机搭建个人NAS
    FFmpeg5.1.3编译动态库详细教程(基于Linux虚拟机)
    Redis Stack功能介绍及redis-om-dotnet使用示例
    (三)数据结构-栈
    mysql之主从复制和读写分离
    Java中包装类的常用方法
    3d代理模型怎么转换成标准模型---模大狮模型网
    SPI机制
    【考研数学】正交变换后如果不是标准型怎么办?| 关于二次型标准化的一些思考
    Snackbar的使用和顶部Snackbar实现
  • 原文地址:https://blog.csdn.net/wang6733284/article/details/132791759