:::info 视频演示 https://www.bilibili.com/video/BV1B3411q7Bs/ :::

Centos 7.8

在线

  1. sudo yum install -y yum-utils device-mapper-persistent-data lvm2
  2. # curl -fsSL https://get.docker.com | bash -s docker --mirror Aliyun
  3. curl -sSL https://get.daocloud.io/docker | sh
  4. systemctl enable docker
  5. systemctl start docker
  6. # 国内下载
  7. curl -L https://get.daocloud.io/docker/compose/releases/download/v2.2.3/docker-compose-`uname -s`-`uname -m` > /usr/local/bin/docker-compose
  8. chmod +x /usr/local/bin/docker-compose

离线

下载资源

  1. sudo yum install -y --downloadonly --downloaddir=$PWD/devel yum-utils device-mapper-persistent-data lvm2
  2. sudo yum install -y devel/*.rpm
  3. yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
  4. yum install -y --downloadonly --downloaddir=$PWD/docker docker-ce
  5. curl -L https://get.daocloud.io/docker/compose/releases/download/1.29.2/docker-compose-`uname -s`-`uname -m` > ./docker-compose

image.png

安装

  1. sudo yum install -y devel/*.rpm
  2. sudo yum install -y docker/*.rpm
  3. systemctl enable docker
  4. systemctl start docker
  5. chmod a+x ./docker-compose
  6. cp ./docker-compose /usr/bin/

系统调优

  1. echo off
  2. # 关闭selinux
  3. #setenforce 0
  4. sudo sed -i 's/SELINUX=enforcing/SELINUX=disabled/g' /etc/selinux/config
  5. # 关闭防火墙
  6. systemctl stop firewalld.service && systemctl disable firewalld.service
  7. # 修改时区
  8. ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
  9. # 系统语言
  10. sudo echo 'LANG="en_US.UTF-8"' >> /etc/profile;source /etc/profile
  11. # 关闭swap
  12. swapoff -a && sed -i '/ swap / s/^\(.*\)$/#\1/g' /etc/fstab
  13. # 性能调优
  14. cat >> /etc/sysctl.conf<<EOF
  15. vm.swappiness = 0
  16. kernel.sysrq = 1
  17. net.ipv4.neigh.default.gc_stale_time = 120
  18. # see details in https://help.aliyun.com/knowledge_detail/39428.html
  19. net.ipv4.conf.all.rp_filter = 0
  20. net.ipv4.conf.default.rp_filter = 0
  21. net.ipv4.conf.default.arp_announce = 2
  22. net.ipv4.conf.lo.arp_announce = 2
  23. net.ipv4.conf.all.arp_announce = 2
  24. # see details in https://help.aliyun.com/knowledge_detail/41334.html
  25. net.ipv4.tcp_max_tw_buckets = 5000
  26. net.ipv4.tcp_syncookies = 1
  27. net.ipv4.tcp_max_syn_backlog = 1024
  28. net.ipv4.tcp_synack_retries = 2
  29. net.ipv4.ip_forward=1
  30. EOF
  31. sysctl -p

Docker容器实例中解析DNS的顺序

  1. 查找Docker daemon内置的DNS服务器127.0.0.11
  2. 查找docker run创建容器实例时通过—dns参数设置的DNS服务器
  3. 查找Docker daemon通过—dns参数,或/etc/docker/daemon.json文件设置的DNS服务器
  4. 查找Docker宿主机上/etc/resolv.conf文件中配置的DNS服务器
  5. 查找Google的DNS服务器,如8.8.8.8和8.8.4.4,2001:4860:4860::8888和2001:4860:4860::8844

    docker 加速

    1. # /etc/docker/daemon.json
    2. "registry-mirrors": ["https://docker.mirrors.ustc.edu.cn"]