0.安装Docker并运行
curl -fsSL https://test.docker.com -o test-docker.sh
sudo sh test-docker.sh
systemctl enable --now docker
1.下载并运行Nginx
# 获取最新版本
docker pull nginx
# 创建挂载目录
mkdir -p /docker/nginx/conf
mkdir -p /docker/nginx/log
mkdir -p /docker/nginx/html
# 创建容器(拷贝必要文件)
docker run --name nginx -p 80:80 -d nginx
# 拷贝配置文件和html到宿主机
docker cp nginx:/etc/nginx/nginx.conf /docker/nginx/conf/nginx.conf
docker cp nginx:/etc/nginx/conf.d /docker/nginx/conf/conf.d
docker cp nginx:/usr/share/nginx/html /docker/nginx/
# 停止容器
docker stop nginx
docker rm nginx
# 创建容器(正式环境)
docker run \
-p 80:80 \
--name nginx \
-v /docker/nginx/conf/nginx.conf:/etc/nginx/nginx.conf \
-v /docker/nginx/conf/conf.d:/etc/nginx/conf.d \
-v /docker/nginx/log:/var/log/nginx \
-v /docker/nginx/html:/usr/share/nginx/html \
-d nginx
# 验证
docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
62f77ad33308 nginx "/docker-entrypoint.…" 3 seconds ago Up 2 seconds 0.0.0.0:80->80/tcp, :::80->80/tcp nginx
2.下载并运行Minio
2.1.部署Minio
# 获取镜像
docker pull minio/minio
# 创建目录
mkdir -p /docker/minio/config
mkdir -p /docker/minio/data
# 创建容器并运行
# MINIO_ACCESS_KEY=用户名
# MINIO_SECRET_KEY=密码
docker run -p 9000:9000 -p 9090:9090 \
--net=host \
--name minio \
-d --restart=always \
-e "MINIO_ACCESS_KEY=minioadmin" \
-e "MINIO_SECRET_KEY=minioadmin" \
-v /docker/minio/data:/data \
-v /docker/minio/config:/root/.minio \
minio/minio server \
/data --console-address ":9090" -address ":9000"
访问Minio IP:9090/login
用户名 :minioadmin
密码 :minioadmin
2.2.创建用户
2.3.创建用户组
2.4.创建KEY
2.5.创建Bucker
3.Nginx反向代理Minio(不使用SSL)
3.1.设置反省代理配置
cd /docker/nginx/conf/conf.d/
vim proxy.conf
proxy_buffering on;
proxy_buffers 8 8k;
proxy_buffer_size 8k;
proxy_busy_buffers_size 16k;
proxy_limit_rate 0;
proxy_request_buffering on;
proxy_http_version 1.1;
proxy_connect_timeout 5s;
proxy_intercept_errors on;
proxy_read_timeout 60s;
proxy_send_timeout 60s;
proxy_set_header Host $host:$server_port;
proxy_set_header Referer $http_referer;
proxy_set_header Cookie $http_cookie;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
3.2.设置虚拟主机
vim s3.conf
server {
listen 80;
listen [::]:80;
server_name 你的域名;
tcp_nodelay off;
#access_log /var/log/nginx/host.access.log main;
location ~ ^/ {
proxy_force_ranges on;
proxy_pass http://ip:9090;
break;
}
}
3.3.重新启动Nginx容器
docker restart nginx
docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
3a2fbbd591b1 minio/minio "/usr/bin/docker-ent…" 52 minutes ago Up 52 minutes minio
62f77ad33308 nginx "/docker-entrypoint.…" 56 minutes ago Up 2 seconds 0.0.0.0:80->80/tcp, :::80->80/tcp nginx
正文完