服务器配置
阿里云服务器低配版1核2G,系统为CentOS 7.4 64位
原计划通过yum安装但是执行"yum install docker" 安装docker成功之后,使用docker安装mysql5.7提示以下错误
Trying to pull repository docker.io/library/mysql ...
missing signature key
查询是因为docker版本太旧不匹配导致安装失败,"yum install docker"安装的是13.*版的docker,然后需执行"yum install -y docker-ce
"进行安装,但是我执行之后docker安装失败(这里错误信息忘复制了,大概就是找不到docker-c),然后决定直接从docker源下载docker文件放到服务器中启动。以下为详细操作。
1、卸载原有docker(如首次安装忽略)
1)停止运行中的docker
systemctl stop docker
2)查看yum安装的docker源文件
yum list installed |grep docker
(一般会显示2个docker开头的文件名)
3)删除安装的docker文件包
yum -y remove docker版本文件包名
4)删除docker的镜像文件(默认在 /var/lib/docker目录下)
cd /var/lib/docker
rm -rf *
2、下载docker安装包(版本:docker-20.10.7)
https://download.docker.com/linux/static/stable/x86_64/docker-20.10.7.tgz
3、安装docker
1)将安装好的包通过工具移动到服务器文件夹内,执行以下命令解压
tar -zxvf docker-20.10.7.tgz
2)将解压好的docker文件夹内文件移动到/usr/bin/下
mv docker/* /usr/bin/
3)配置docker.service
vim /usr/lib/systemd/system/docker.service
添加以下内容
[Unit]
Description=Docker Application Container Engine
Documentation=https://docs.docker.com
After=network-online.target firewalld.service
Wants=network-online.target
[Service]
Type=notify
ExecStart=/usr/bin/dockerd
ExecReload=/bin/kill -s HUP $MAINPID
LimitNOFILE=infinity
LimitNPROC=infinity
TimeoutStartSec=0
Delegate=yes
KillMode=process
Restart=on-failure
StartLimitBurst=3
StartLimitInterval=60s
[Install]
WantedBy=multi-user.target
4)重新加载配置文件(每次修改docker.service后都需执行)
systemctl daemon-reload
5)启动docker
systemctl start docker.service
6)查看docker信息
[root@******* ~]# docker info
Client:
Context: default
Debug Mode: false
Server:
Containers: 0
Running: 0
Paused: 0
Stopped: 0
Images: 2
Server Version: 20.10.10
Storage Driver: overlay2
Backing Filesystem: extfs
Supports d_type: true
Native Overlay Diff: true
userxattr: false
Logging Driver: json-file
Cgroup Driver: cgroupfs
Cgroup Version: 1
Plugins:
Volume: local
Network: bridge host ipvlan macvlan null overlay
Log: awslogs fluentd gcplogs gelf journald json-file local logentries splunk syslog
Swarm: inactive
Runtimes: runc io.containerd.runc.v2 io.containerd.runtime.v1.linux
Default Runtime: runc
Init Binary: docker-init
containerd version: 5b46e404f6b9f661a205e28d59c982d3634148f8
runc version: v1.0.2-0-g52b36a2d
init version: de40ad0
Security Options:
seccomp
Profile: default
Kernel Version: 3.10.0-693.2.2.el7.x86_64
Operating System: CentOS Linux 7 (Core)
OSType: linux
Architecture: x86_64
CPUs: 1
Total Memory: 1.796GiB
Name: iZ2ze9mqwfyiyrbl8o5kr8Z
ID: 36SP:NXDK:FQLQ:Z5XU:2JBL:RKNU:G7LX:OZCA:TVHQ:DD7P:KPQN:3NRM
Docker Root Dir: /var/lib/docker
Debug Mode: false
Registry: https://index.docker.io/v1/
Labels:
Experimental: false
Insecure Registries:
127.0.0.0/8
Live Restore Enabled: false
Product License: Community Engine
7)设置docker开机自启
systemctl enable docker
至此docker安装成功
3、安装Docker可视化管理工具Portainer
1)搜索镜像
docker search portainer
2)拉取镜像
docker pull portainer/portainer
3)查看镜像
docker images
4)运行镜像
#创建数据卷
docker volume create portainer_data
#启动容器
docker run -d -p 9000:9000 --restart=always --name prtainer -v /var/run/docker.sock:/var/run/docker.sock -v portainer_data:/data portainer/portainer
#查看启动中的容器
docker ps
5)修改阿里云服务器安全组规则,允许外部访问9000端口
6)通过浏览器访问IP:9000
首次访问需设置用户名密码
7)使用