vm搭建docker-swarm

安装vm

安装cento7.0(至少7.0以上才行)

配置网络

静态网络

1、关闭防火墙
    systemctl stop firewalld.service #停止firewall
    systemctl disable firewalld.service #禁止firewall开机启动

2、配置网络
    设置vm为桥接
        在vm->审核之后->网络->连接方式选择桥接网卡->界面名称(看你希望桥接你本机电脑的哪个网络,en0一般是wifi)

    vim /etc/sysconfig/network-scripts/ifcfg-eth0
        DEVICE=eth0
        HWADDR=08:00:27:D8:2C:F8
        TYPE=Ethernet
        UUID=fd397c03-6719-4cf3-8e88-e6df26256ba1
        ONBOOT=yes
        NM_CONTROLLED=yes
        BOOTPROTO=static
        IPADDR=10.17.8.108
        NETMASK=255.255.192.0
        GATEWAY=10.17.0.1
        USERCTL=no
        DNS1=10.16.0.222
        DNS2=114.114.114.114

    注意:
        IPADDR保持和主机在同一个网段
        netmask,GATEWAY保持和你的主机一致

    vim /etc/sysconfig/network
        NETWORKING=yes
        HOSTNAME=swarm-node1
        GATEWAY=10.17.0.1

    重启
        service network restart

动态网络

比较坑的地方,公司的网线各种代理,但是吧,网线又能翻墙,wifi不能翻墙,各种折腾桥接到usb网线不通,直接换成网络地址转换NAT
vim /etc/sysconfig/network-scripts/ifcfg-eth0    
    DEVICE=eth0
    HWADDR=08:00:27:D8:2C:F8
    TYPE=Ethernet
    UUID=fd397c03-6719-4cf3-8e88-e6df26256ba1
    ONBOOT=yes
    NM_CONTROLLED=yes
    BOOTPROTO=dhcp
    USERCTL=no
重启,ping www.baidu.com 果断能上网还能翻墙,爽歪歪

安装docker

  1. 安装需要的依赖包
    yum install -y yum-utils device-mapper-persistent-data

  2. 配置稳定仓库

    yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
    
  3. 安装指定版本
    查看版本

    yum list docker-ce --showduplicates | sort -r
    

    安装18.03.1.ce-1.el7版本(这里可以在上面的列表中查询自己需要的版本)

    yum -y install docker-ce-18.03.1.ce-1.el7.centos.x86_64
    
  4. 查看版本
    docker version

  5. 启动docker
    systemctl start docker

  6. docker开机自启动
    systemctl enable docker

测试docker swarm

docker swarm

设置国内镜像源

设置镜像源

  1. daocloud curl -sSL https://get.daocloud.io/daotools/set_mirror.sh | sh -s 你的地址 在daocloud能看到这个命令
  2. 编辑这个文件:/etc/docker/daemon.json,内容如下
    {"registry-mirrors": ["镜像地址"]}
    

重启docker

sudo systemctl restart docker

设置主机名称

hostnamectl set-hostname swarm-node-1       swarm-node-1为我要设置的主机的名称   

重启机器

安装swarm

我的docker版本里面自带的,不需要安装

设置mannage,ip为当前机器的ip(添加主节点)

docker swarm init --advertise-addr 192.168.1.110

显示如下信息:
Swarm initialized: current node (dbpnzm7m57nc060ws4of92uh2) is now a manager.

To add a worker to this swarm, run the following command:

    docker swarm join --token SWMTKN-1-0mph6qu3756p99i2hl1soaxxy6zl6h0jnpu07pf2b46q8x5s1u-8nizhk0z629pbe4rfjskdjx97 192.168.1.110:2377

To add a manager to this swarm, run 'docker swarm join-token manager' and follow the instructions.

在节点机器执行如下命令(加入主节点)

docker swarm join --token SWMTKN-1-0mph6qu3756p99i2hl1soaxxy6zl6h0jnpu07pf2b46q8x5s1u-8nizhk0z629pbe4rfjskdjx97 192.168.1.110:2377

查看节点

docker node ls

安装docker swarm图形化界面

  1. 在manage机器执行命令
    docker service create \
    –name portainer \
    –publish 9000:9000 \
    –constraint ‘node.role == manager’ \
    –mount type=bind,src=/var/run/docker.sock,dst=/var/run/docker.sock \
    portainer/portainer \
    -H unix:///var/run/docker.sock

  2. 访问地址
    ip:9000 ip为manage的ip地址,eg:192.168.1.110:9000 我的manage地址是192.168.1.110

坚持原创技术分享,您的支持将鼓励我继续创作!