docker安装常用服务

本文列出以下服务的安装教程mysql、reids、nginx、nacos、minio

一、docker安装mysql

1
2
3
4
5
6
7
8
9
10
11
12
13
#以下命令可安装最新8+版本
docker pull mysql:latest

#如果要指定安装,请到docker hub仓库搜索指定版本 https://hub.docker.com/_/mysql
#比如需要安装5.7.38版本,则命令为
docker pull mysql:5.7.38

#镜像拉取完成后再启动容器
docker run -itd --restart always --name mysql-test -p 3306:3306 -e MYSQL_ROOT_PASSWORD=123456 mysql --lower-case-table-names=1

# mysql-test 指定容器名称 MYSQL_ROOT_PASSWORD 为 root密码,安装后可直接连接
# --lower-case-table-names=1 标识数据库名、字段等忽略大小写
# 注意: mysql8在数据库启动之前就需要改变该字段,否则后期无法改变,mysql5则可以随时配置

==docker 拉取镜像慢,解决办法==

1
2
3
4
5
6
7
8
9
10
11
12
13
cd /etc/docker

vim daemon.json

#将下列内容复制进去,使用阿里云镜像加速
{
"registry-mirrors":[
"https://9cpn8tt6.mirror.aliyuncs.com",
"https://registry.docker-cn.com"
]
}

service docker restart # 重启docker服务

二、docker安装nginx

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#同上,先拉取nginx最新版镜像
docker pull nginx

#启动容器时
docker run -d \\
--restart always \\
-p 80:80 \\
--name test-nginx \\
-v /var/local/data/nginx/html:/usr/share/nginx/html \\
-v /var/local/data/nginx/conf/nginx.conf:/etc/nginx/nginx.conf \\
-v /var/local/data/nginx/conf.d:/etc/nginx/conf.d \\
-v /var/local/data/nginx/logs:/var/log/nginx \\
nginx

#-v 挂在本地数据、配置目录到容器

# 注意:直接执行该命令可能会报错,如:Are you trying to mount a directory onto a file
# 这是因为conf目录下的nginx.conf本来应该是个文件,但是被创建成了文件夹,所以需要删除该文件夹,重新创建一个或者从别的地方复制

三、docker安装nacos

1
2
3
4
5
6
7
8
9
10
11
12
#拉取最新版镜像
docker pull nacos/nacos-server:latest

#如果需要指定版本,比如1+版本
docker pull nacos/nacos-server:v1.4.3

docker run -itd -e JVM_XMS=256m -e JVM_XMX=256m -e JVM_XMN=256m --env MODE=standalone --name nacos -p 8848:8848 \\
-v /var/local/data/nacos/logs:/home/nacos/logs \\
-v /var/local/data/nacos/conf/application.properties:/home/nacos/conf/application.properties\\ nacos/nacos-server

# JVM_XMS 等参数可限制容器使用最大内存
# v 参数同样挂载本地目录到容器

四、docker安装redis

1
2
3
4
5
#拉取最新版redis镜像
docker pull redis:latest

#运行容器
docker run -itd --name redis-test -p 6379:6379 redis

五、docker-compose安装

1
curl -L https://get.daocloud.io/docker/compose/releases/download/v2.5.0/docker-compose-`uname -s`-`uname -m` > /usr/local/bin/docker-compose

六、docker安装minio

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
#拉取最新镜像(稳定版,不是最新版)
docker pull minio/minio:latest

#或者指定版本镜像
docker pull minio/minio:RELEASE.2022-05-19T18-20-59Z

#运行容器
docker run -d -p 9000:9000 -p 9090:9090 --name minio1 \
-e "MINIO_ROOT_USER=sire" \
-e "MINIO_ROOT_PASSWORD=DHSRscw2" \
-v /usr/local/minio2/data:/data \
--restart=always \
minio/minio:RELEASE.2022-05-19T18-20-59Z server /data --console-address ':9090'

#MINIO_ROOT_USER MINIO_ROOT_PASSWORD 指定用户名和密码