前言
一台新的服务器怎么安装docker,容器怎么启动,并且启动参数都是什么意思能
开始安装
卸载旧的docker服务
防止版本不同存在干扰
yum remove docker \ docker-client \ docker-client-latest \ docker-common \ docker-latest \ docker-latest-logrotate \ docker-logrotate \ docker-engine
准备工具
更新yum工具包
yum install -y yum-utils
yum makecache fast
设置镜像仓库
阿里云仓库
yum-config-manager \ --add-repo \ http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
官方仓库
yum-config-manager \ --add-repo \ https://download.docker.com/linux/centos/docker-ce.repo
安装docker-ce(社区版-免费的)
yum install docker-ce docker-ce-cli containerd.io
启动docker服务
systemctl start docker
查看是否安装成功
docker version
设置服务开机自动启动
systemctl enable docker.service
设置docker拉取镜像的源和dns服务器地址
vi /etc/docker/daemon.json
{
"registry-mirrors": ["https://registry.cn-hangzhou.aliyuncs.com"],
"dns": ["223.5.5.5"]
}
查看docker镜像列表
docker images
拉取镜像
docker pull ***:[版本]
创建docker内部网络
由于容器互相隔离,不同容器间无法互相访问,所以docker提供给不同容器互相访问的方式
创建docker内部网络
docker network create custom-local-net
常用容器启动参数示例
consul
docker run --restart=always -p 8500:8500 --network custom-local-net --name consul -d consul
redis
docker run -p 6379:6379 --name redis \
-v /opt/docker/redis/data:/data \
--restart=unless-stopped \
--network=custom-local-net \
-d redis \
--appendonly yes
mysql5.7
docker run -d \
--name mysql \
-p 3306:3306 \
-v /opt/docker/mysql/data:/var/lib/mysql \
-v /opt/docker/mysql/conf.d:/etc/mysql/conf.d \
-e MYSQL_ROOT_PASSWORD=root \
--restart=unless-stopped \
--network=custom-local-net \
-d mysql:5.7