Docker安裝Redmine並使用Nginx反向代理為https
1.部署docker環境
安裝後最好配置為國內源,此步略過,網上教程很多。
2.部署資料庫環境
這裡直接使用宿主機內現有的mysql資料庫,就不用再安裝了。
使用以下sql語句建立資料庫和資料庫使用者。
CREATE DATABASE IF NOT EXISTS redmine DEFAULT CHARSET utf8mb4 COLLATE utf8mb4_general_ci;
CREATE USER 'redmine'@'172.17.0.%' IDENTIFIED BY '123456';
GRANT all privileges ON redmine.* TO 'redmine'@'172.17.0.%';
FLUSH PRIVILEGES;
3.安裝redmine容器
mkdir -p /data/redmine/files
docker run --name redmine -d \
-p 12000:3000 \
-v /data/redmine/files:/usr/src/redmine/files:z \
-e REDMINE_DB_MYSQL=172.17.0.1 \
-e REDMINE_DB_PORT=3306 \
-e REDMINE_DB_DATABASE=redmine \
-e REDMINE_DB_USERNAME=redmine \
-e REDMINE_DB_PASSWORD=123456 \
-e TZ="Asia/Shanghai" \
--restart=always \
redmine:4.1.0
其中12000埠可以自己指定,為宿主機的埠,對映到容器的3000埠,容器的3000埠為redmine訪問埠。
4.配置nginx反向代理
server {
listen 443 ssl;
ssl on;
server_name redmine.xxx.com;
#配置ssl證照路徑,自行設定
ssl_certificate /etc/letsencrypt/live/xxx.com/fullchain.pem;
#配置ssl金鑰路徑,自行設定
ssl_certificate_key /etc/letsencrypt/live/xxx.com/privkey.pem;
ssl_session_timeout 5m;
ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
ssl_prefer_server_ciphers on;
location / {
proxy_pass http://127.0.0.1:12000/;
client_max_body_size 100m;
proxy_redirect off;
#下面這一步一定要加上埠號,否則如果使用非443埠,網站在ajax請求之後會跳轉到錯誤的頁面(會不帶埠號)
proxy_set_header Host $host:$server_port;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header REMOTE-HOST $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection $http_connection;
proxy_http_version 1.1;
#下面這一行配置也要加上,否則ajax請求之後會跳轉到錯誤的頁面(https會變成http)
proxy_set_header X-Forwarded-Proto $scheme;
index index.html index.htm;
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root html;
}
}
相關文章
- docker 安裝 nginx 並配置反向代理DockerNginx
- 使用nginx反向代理docker中的git和redmineNginxDockerGit
- docker 安裝 wordpress,通過nginx反向代理,繫結域名,配置httpsDockerNginxHTTP
- 為Docker建立自動化nginx反向代理DockerNginx
- Nginx proxy manager反向代理docker hubNginxDocker
- nginx 反向代理 swoole 使用Nginx
- nginx的https和http共存反向代理配置NginxHTTP
- Redmine 安裝並配置使用Agile plugin外掛Plugin
- 使用docker安裝nginxDockerNginx
- 利用nginx反向代理加速docker映象拉取NginxDocker
- Nginx反向代理Nginx
- nginx 反向代理Nginx
- nginx正向代理、反向代理Nginx
- centos+nginx+redmine+gitosis安裝指南CentOSNginxGit
- gitlab-ce使用nginx做反向代理的方式啟用httpsGitlabNginxHTTP
- docker下nginx反向代理和負載均衡配置DockerNginx負載
- mac環境下配置nginx反向代理,https協議MacNginxHTTP協議
- nginx通過https方式反向代理多例項tomcatNginxHTTPTomcat
- Nginx 配置:反向代理Nginx
- Nginx 配置反向代理Nginx
- [Nginx] TCP 反向代理NginxTCP
- Nginx 反向代理 websocketNginxWeb
- NGINX伺服器有什麼作用?什麼叫反向代理?為什麼要使用反向代理?Nginx伺服器
- Docker學習筆記之-部署.Net Core 3.1專案到Docker容器,並使用Nginx反向代理(CentOS7)(二)Docker筆記NginxCentOS
- Docker Compose例項之nginx反向代理GitLabDockerNginxGitlab
- Nginx反向代理+負載均衡簡單實現(https方式)Nginx負載HTTP
- CentOS雲主機中Nginx反向代理http、https服務CentOSNginxHTTP
- 如何使用 Weave 以及 Docker 搭建 Nginx 反向代理/負載均衡伺服器DockerNginx負載伺服器
- Nginx之路--配置正向代理、反向代理Nginx
- Nginx正向代理和反向代理配置Nginx
- nginx 反向代理設定Nginx
- Nginx四層反向代理Nginx
- 簡單介紹nginx反向代理及使用Nginx
- 使用 Nginx Proxy Manager反向代理開啟SSLNginx
- Docker安裝NginxDockerNginx
- PgSql on Docker with HaProxy 反向代理SQLDocker
- Nginx安裝與代理Nginx
- nginx 反向代理 介面請求Nginx