blank的编程之路


  • 首页

  • 归档

  • 搜索
consul atomikos mybatisplus druid nexus nas named bind mysqldump acme.sh Dockerfile rsync keepalived swarm kibana ubuntu linux scp bugfix https ssl certbot curl gogs adminer harbor yum portainer python kubernetes idea java springboot maven docker-compose redis nginx mysql brew git chocolatey jenkins elasticsearch docker haproxy rabbitmq centos

centos7 yum 安装 docker-ce & docker-compose

发表于 2019-03-13 | 分类于 运维 | 0 | 阅读次数 389
## 一键安装 docker
curl -sSL https://get.docker.com/ | sh
# 或
wget -qO- https://get.docker.com/ | sh

快速安装

yum install -y yum-utils  device-mapper-persistent-data lvm2 && \
yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo && \
yum install -y docker-ce && \
mkdir -p /etc/docker && \
cat > /etc/docker/daemon.json <<EOF
{
  "registry-mirrors": [
	"https://2h3po24q.mirror.aliyuncs.com",
	"https://dockerhub.azk8s.cn",
	"https://mirror.ccs.tencentyun.com",
	"https://docker.mirrors.ustc.edu.cn"
  ],
  "exec-opts": ["native.cgroupdriver=systemd"],
  "log-driver": "json-file",
  "log-opts": {
    "max-size": "100m"
  }
}
EOF


sed -i 's|SELINUX=enforcing|SELINUX=disabled|' /etc/sysconfig/selinux && \
sed -i 's|SELINUX=enforcing|SELINUX=disabled|' /etc/selinux/config && \




cat > /etc/sysctl.d/docker.conf <<EOF
net.ipv4.ip_forward                 = 1
EOF

sysctl -p /etc/sysctl.d/docker.conf


curl -L https://github.com/docker/compose/releases/download/1.25.0/docker-compose-`uname -s`-`uname -m` -o /usr/local/bin/docker-compose && chmod +x /usr/local/bin/docker-compose && \
systemctl daemon-reload && systemctl enable --now docker && \
docker -v && docker-compose -v

Docker version 19.03.5, build 633a0ea
docker-compose version 1.25.0, build 0a186604

一步一步操作

安装所需依赖

yum install -y yum-utils  device-mapper-persistent-data lvm2  

添加 docker repo源

# 使用阿里云镜像 repo 源(国内网络环境推荐)
yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

# 或使用官方 repo 源
yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo  

安装 docker-ce

yum install -y docker-ce

确认安装

docker -v
Docker version 19.03.1, build 74b1e89

配置 国内镜像加速

mkdir -p /etc/docker

cat > /etc/docker/daemon.json <<EOF
{
  "registry-mirrors": [
	"https://dockerhub.azk8s.cn",
	"https://mirror.ccs.tencentyun.com",
	"https://docker.mirrors.ustc.edu.cn"
  ],
  "exec-opts": ["native.cgroupdriver=systemd"],
  "log-driver": "json-file",
  "log-opts": {
    "max-size": "100m"
  }
}
EOF

关闭 selinux

# 确认 selinux 状态为 disabled 如果不是需要关闭
sestatus

sed -i 's|SELINUX=enforcing|SELINUX=disabled|' /etc/sysconfig/selinux && \
sed -i 's|SELINUX=enforcing|SELINUX=disabled|' /etc/selinux/config && \
reboot

开启主机报文转发 不开启会导致docker容器里面访问不到外网


cat > /etc/sysctl.d/docker.conf <<EOF
net.ipv4.ip_forward                 = 1

EOF && sysctl -p

开启2375管理端口 (外网服务器请勿开启 会导致 docker 服务器未授权访问)

vim /usr/lib/systemd/system/docker.service

#修改ExecStart 处为
ExecStart=/usr/bin/dockerd -H tcp://0.0.0.0:2375 -H unix://var/run/docker.sock

docker-open-2375-port

重载配置 && 启动 docker && 配置 docker 开机自启

systemctl daemon-reload && systemctl enable --now docker

安装 docker-compose 1.26.2版本

curl -L https://github.com/docker/compose/releases/download/1.26.2/docker-compose-`uname -s`-`uname -m` -o /usr/local/bin/docker-compose && chmod +x /usr/local/bin/docker-compose

确认 docker && docker-compose 安装

docker -v && docker-compose -v
Docker version 19.03.12, build xx
docker-compose version 1.26.2, build xx

测试 docker

docker run --rm hello-world
Unable to find image 'hello-world:latest' locally
latest: Pulling from library/hello-world
1b930d010525: Pull complete 
Digest: sha256:c3b4ada4687bbaa170745b3e4dd8ac3f194ca95b2d0518b417fb47e5879d9b5f
Status: Downloaded newer image for hello-world:latest

Hello from Docker!
This message shows that your installation appears to be working correctly.

To generate this message, Docker took the following steps:
 1. The Docker client contacted the Docker daemon.
 2. The Docker daemon pulled the "hello-world" image from the Docker Hub.
    (amd64)
 3. The Docker daemon created a new container from that image which runs the
    executable that produces the output you are currently reading.
 4. The Docker daemon streamed that output to the Docker client, which sent it
    to your terminal.

To try something more ambitious, you can run an Ubuntu container with:
 $ docker run -it ubuntu bash

Share images, automate workflows, and more with a free Docker ID:
 https://hub.docker.com/

For more examples and ideas, visit:
 https://docs.docker.com/get-started/

Done!

  • 本文作者: blank
  • 本文链接: https://blankhang.com/2019/03/13/201908071419
  • 版权声明: 本博客所有文章除特别声明外,均采用CC BY-NC-SA 3.0 许可协议。转载请注明出处!
# consul # atomikos # mybatisplus # druid # nexus # nas # named # bind # mysqldump # acme.sh # Dockerfile # rsync # keepalived # swarm # kibana # ubuntu # linux # scp # bugfix # https # ssl # certbot # curl # gogs # adminer # harbor # yum # portainer # python # kubernetes # idea # java # springboot # maven # docker-compose # redis # nginx # mysql # brew # git # chocolatey # jenkins # elasticsearch # docker # haproxy # rabbitmq # centos
macos 使用 brew 搭建开发环境
CentOS7 系统配置国内 yum 源和 epel 源
© 2021 blank
Everything is energy and everything has a frequency