docker安装应用

1、docker国内缓存

bash 复制代码
cat > /etc/docker/daemon.json  << EOF
{
  "registry-mirrors": [
    "https://docker.1panel.live",
    "https://docker.m.daocloud.io",
    "https://hub-mirror.c.163.com"
  ]
}
EOF

{
"registry-mirrors": [
"https://2a6bf1988cb6428c877f723ec7530dbc.mirror.swr.myhuaweicloud.com",
"https://mirror.baidubce.com",
"https://docker.registry.cyou",
"https://docker-cf.registry.cyou",
"https://dockercf.jsdelivr.fyi",
"https://docker.jsdelivr.fyi",
"https://dockertest.jsdelivr.fyi",
"https://dockerproxy.com",
"https://docker.nju.edu.cn",
"https://docker.mirrors.sjtug.sjtu.edu.cn",
"https://mirror.iscas.ac.cn",
"https://docker.rainbond.cc"
    ]
}


{
  "registry-mirrors": [
    "https://docker.1ms.run",
    "https://docker.kejilion.pro",
    "https://docker-registry.nmqu.com",
    "https://docker.xuanyuan.me",
    "https://dockerproxy.net",
    "https://hub.rat.dev",
    "https://hub1.nat.tf",
    "https://hub2.nat.tf",
    "https://hub3.nat.tf",
    "https://hub4.nat.tf",
    "https://mirror.iscas.ac.cn",
    "https://docker-0.unsee.tech",
    "https://docker.apiba.cn",
    "https://docker.m.daocloud.io",
    "https://docker.hpcloud.cloud"
  ]
}

2、安装docker-commpose

bash 复制代码
# 1. 下载二进制文件
sudo curl -L "https://github.com/docker/compose/releases/latest/download/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose

# 2. 添加执行权限
sudo chmod +x /usr/local/bin/docker-compose

# 3. 验证安装
docker-compose --version

* 国内网络加速
sudo curl -L "https://ghproxy.com/https://github.com/docker/compose/releases/latest/download/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose

3、docker-commpose安装mysql主从集群

1、docker-commpose配置信息

yaml 复制代码
version: "3.8"

services:
  mysql-master:
    image: mysql
    container_name: mysql-master
    restart: always
    environment:
      MYSQL_ROOT_PASSWORD: root
    volumes:
      - ./master/my.cnf:/etc/mysql/conf.d/my.cnf
      - master-data:/var/lib/mysql
    ports:
      - "3306:3306"

  mysql-slave:
    image: mysql
    container_name: mysql-slave
    restart: always
    environment:
      MYSQL_ROOT_PASSWORD: root
    volumes:
      - ./slave/my.cnf:/etc/mysql/conf.d/my.cnf
      - slave-data:/var/lib/mysql
    ports:
      - "3307:3306"
    depends_on:
      - mysql-master

volumes:
  master-data:
  slave-data:

2、启动与查看

bash 复制代码
## 启动mysql集群
docker-compose -f /root/docker-commpose/mysql-salve.yaml  up -d
## 测试mysql集群
docker-compose -f /root/docker-commpose/mysql-salve.yaml ps
##关闭集群(保留数据卷)
docker-compose -f /root/docker-commpose/mysql-salve.yaml down
##关闭集群(不保留数据卷)
docker-compose -f /root/docker-commpose/mysql-salve.yaml down -v

# 先停止容器
docker-compose -f /root/docker-commpose/mysql-salve.yaml stop

# 查看状态确认
docker-compose -f /root/docker-commpose/mysql-salve.yaml ps

# 再删除容器
docker-compose -f /root/docker-commpose/mysql-salve.yaml rm

3、master配置

3、docker-commpose安装dns服务

1.dns.yaml

yaml 复制代码
version: '3'
services:
  dns:
    image: andyshinn/dnsmasq
    container_name: dnsmasq
    command: --no-daemon
    environment:
      DNS1: "61.139.2.69"
      DNS2: "8.8.8.8"
    ports:
      - "127.0.0.1:1080:53/tcp"
      - "127.0.0.1:1080:53/udp"
    cap_add:
      - NET_ADMIN
    restart: always
    volumes:
      - ./dnsmasq.conf:/etc/dnsmasq.conf
      - ./logs:/var/log/

2、配置文件dnsmasq.conf

  • 创建文件 touch ./dnsmasq.conf

  • vim touch ./dnsmasq.conf

conf 复制代码
# 基础配置
port=53                  # 监听53端口(DNS默认端口)
interface=eth0           # 监听网卡(容器内默认eth0)
no-resolv                # 禁用默认的resolv.conf读取
no-hosts                 # 可选:是否忽略容器内hosts文件
cache-size=1000          # DNS缓存大小,提升解析速度

# 上游 DNS
server=223.5.5.5
server=223.6.6.6

# 域名与IP映射
address=/node1/192.168.1.200
address=/node2/172.16.2.101

# 可选:启用DNSSEC(安全验证)
# dnssec

# 可选:日志(排查问题用)
log-queries
log-facility=/var/log/dnsmasq.log
bash 复制代码
##启动
docker-compose -f $(pwd)/dns.yaml up -d 
##关闭
docker-compose -f $(pwd)/dns.yaml down

3、测试

  • 安装测试工具 yum -y install bind-utils

  • nslookup 127.0.0.1:1080

相关推荐
MXsoft61811 分钟前
**智能运维如何实现全栈监控与****AI****告警?****——****一体化平台实战解析**
运维·人工智能
SPC的存折12 分钟前
19-2、K8s 三种 QoS 等级 & 与 Resources(requests_limits)的核心关联
云原生·容器·kubernetes
MXsoft61816 分钟前
**运维体系升级:筑牢企业数字化转型的稳定底座**
运维
SPC的存折24 分钟前
1、K8S-组件介绍
云原生·容器·kubernetes
MXsoft61824 分钟前
**一体化智能运维如何破解跨区域****IT****管理****难题****?**
运维
源远流长jerry1 小时前
Linux 网络虚拟化深度解析:从 veth 设备对到容器网络实战
linux·运维·服务器·网络·性能优化·php
|_⊙1 小时前
Linux 深入理解文件(Ext2文件系统:上)
linux·运维·数据库
GIOTTO情1 小时前
Infoseek舆情处置技术解析:基于AI大模型的全链路自动化处置方案
运维·人工智能·自动化
红茶要加冰1 小时前
七、正则表达式
linux·运维·正则表达式·shell
华万通信king1 小时前
企业微信机器人Webhook开发实战:从配置到生产级调用
运维·自动化·企业微信