Docker 安装常用软件

Docker 安装常用软件

别null了 2,483 2022-08-23

Docker 安装 Nginx

Nginx官网查看最新稳定版
image-1661237595186
然后到DockerHub中找到对应版本的镜像,本文以 1.20.2 版本为例

# 下载镜像
docker pull nginx:1.20.2

# 先随便运行一下
docker run -itd --restart=always --name nginx -p 80:80 nginx:1.20.2

# 创建目录
mkdir -p /opt/docker/nginx

# 拷贝容器中的配置文件、日志文件、默认的静态页面(50x.html, index.html)
# 这样就不用到容器里面去改配置了
docker cp nginx:/etc/nginx /opt/docker/nginx/conf
docker cp nginx:/var/log/nginx /opt/docker/nginx/log
docker cp nginx:/usr/share/nginx/html /opt/docker/nginx/html

# 备份配置文件
cd /opt/docker/nginx/conf/conf.d
cp default.conf default.conf.bak

# 停止并删除刚刚创建的nginx容器
docker stop nginx
docker rm nginx

# 映射配置文件、日志文件等,端口按自己需求开放
docker run -itd --restart=always --name nginx -p 80:80 -p 443:443 \
-v /opt/docker/nginx/conf/:/etc/nginx/ \
-v /opt/docker/nginx/log/:/var/log/nginx \
-v /opt/docker/nginx/html:/usr/share/nginx/html \
nginx:1.20.2

# 修改配置文件后可以运行这个命令重启nginx,也可以直接重启容器
docker exec -it nginx nginx -s reload

Docker 安装 MySQL8

MySQL官网下载地址
MySQL DockerHub
这里以 8.0.28 版本为例

1.安装

# 下载镜像
docker pull mysql:8.0.28

# 运行
docker run -itd --name mysql -p 3306:3306 -e MYSQL_ROOT_PASSWORD=123456 mysql:8.0.28

# 创建配置文件及数据目录
mkdir -p /opt/docker/mysql/conf /opt/docker/mysql/data

# 复制配置文件
docker cp mysql:/etc/mysql/my.cnf /opt/docker/mysql/conf/

# 删除容器
docker stop mysql
docker rm mysql

# 重新创建并映射目录
docker run -itd --name mysql --restart=unless-stopped -p 3306:3306 \
-v /opt/docker/mysql/conf/my.cnf:/etc/mysql/my.cnf \
-v /opt/docker/mysql/data:/var/lib/mysql \
-e MYSQL_ROOT_PASSWORD=123456 \
mysql:8.0.28

2.开启远程连接

# 进入mysql容器
docker exec -it mysql /bin/bash
# 连接
mysql -u root -p

# 切换数据库
use mysql;

# 查看是否允许远程连接
select user, host from user;

# 开启远程连接
update user u set u.host='%' where u.user='root';
# 刷新权限
flush privileges;

3.修改密码

ALTER user 'root'@'%' IDENTIFIED BY '123456' PASSWORD EXPIRE NEVER;

Docker 安装 Redis6

Redis官网
Redis6.2.7下载

# 下载镜像
docker pull redis:6.2.7

# 创建目录
mkdir -p /opt/docker/redis/conf /opt/docker/redis/data

# 安装wget
yum install -y wget
# 打开配置文件目录
cd /opt/docker/redis/conf/
# 容器中没有配置文件,需要自己下载
# 下载最新版本配置文件(建议从对应版本的redis安装包中获取,避免出现问题)
wget http://download.redis.io/redis-stable/redis.conf

# 编辑配置文件
vim /opt/docker/redis/conf/redis.conf

# 修改以下几项
bind 127.0.0.1 -::1 # ip 改为 0.0.0.0
requirepass foobared # 将注释掉的requirepass配置项打开,把foobared改为自己想要的密码
appendonly yes #持久化设置(可选),追加模式有更好的耐久性

# 创建并运行容器、挂载配置文件和持久化目录
docker run -itd --restart=unless-stopped --name redis -p 6379:6379 \
-v /opt/docker/redis/conf:/usr/local/etc/redis \
-v /opt/docker/redis/data:/data \
redis:6.2.7 redis-server /usr/local/etc/redis/redis.conf

Docker 安装 Minio

docker pull minio/minio:RELEASE.2022-08-22T23-53-06Z

mkdir -p /opt/docker/minio/data

docker run -itd --restart=unless-stopped \
--name minio -p 9000:9000 -p 9001:9001 \
-v /opt/docker/minio/data:/data \
-e "MINIO_ROOT_USER=admin" \
-e "MINIO_ROOT_PASSWORD=oss20228848.." \
docker.io/minio/minio:RELEASE.2022-08-22T23-53-06Z server /data --console-address ":9001"

参考文档
https://docs.min.io/minio/baremetal/quickstart/container.html
https://hub.docker.com/r/minio/minio


# Nginx # Docker # Redis # MySQL