新增说明

This commit is contained in:
takalalika
2020-12-15 16:17:39 +08:00
parent e569ba3eb6
commit 41fa48c8bd
9 changed files with 181 additions and 4 deletions
+20 -2
View File
@@ -5,7 +5,7 @@
## 目录 ## 目录
use_ssl:支持docker-compose一键搭建并使用ssl use_ssl:支持docker-compose一键搭建并使用ssl
normal:一些人不喜欢https或者如果套用cf再用 Let’s Encrypt 生成证书会出问题。这两种情况用这个目录下的 normal:一些人不喜欢https或者如果套用cf再用 Let’s Encrypt 生成证书会出问题。这两种情况用这个目录下的
这两个目录任选一个使用 tool: 一些工具类的软件,直接使用ip访问或者直接使用docker跑的东西
## 核心 ## 核心
use_ssl/nginx-proxy 或者 normal/nginx-proxy 目录下的docker-compose,好奇可以自行google image后面的内容 use_ssl/nginx-proxy 或者 normal/nginx-proxy 目录下的docker-compose,好奇可以自行google image后面的内容
@@ -20,7 +20,6 @@
cd auto-server\use_ssl\nginx-proxy cd auto-server\use_ssl\nginx-proxy
or or
cd auto-server\normal\nginx cd auto-server\normal\nginx
docker-compose up -d docker-compose up -d
#### 4.修改并启动需要启动的服务的docker-compose中的参数 #### 4.修改并启动需要启动的服务的docker-compose中的参数
如bitwarden下的 如bitwarden下的
@@ -28,6 +27,25 @@
- LETSENCRYPT_HOST=example.test.com - LETSENCRYPT_HOST=example.test.com
- DEFAULT_EMAIL=xxx@gmail.com - DEFAULT_EMAIL=xxx@gmail.com
将对应的域名和邮箱修改,不使用ssl的情况下 只需要修改VIRTUAL_HOST 将对应的域名和邮箱修改,不使用ssl的情况下 只需要修改VIRTUAL_HOST
一些特殊的软件可能需要额外配置,请留意文件中的注释
## 已知的问题
在套用cloudflare并且https启用严格的情况下,再使用use_ssl中的方法运行可能出现ssl检验不过的情况,实测可以先使用灵活模式,再运行docker-compose。再改成严格模式/直接使用normal方式启动cf设置成灵活模式/cloudflare使用严格模式并且dns中配置足够久的情况下仍然可以直接使用use_ssl启动,这也是为什么一开始我没有发现这个问题的原因。
## 问题排查和一些基本操作
当发现启动项目后运行不正常,先使用docker ps -a
查询到对应docker容器的id 再使用 docker logs -f 容器id的方式可以查询到该容器的启动日志。多数情况下是jrcs/letsencrypt-nginx-proxy-companion没有签发成功,详细情况可以添加issue。或者直接使用normal方式
## 已经支持的项目
bitwarden
chevereto
gitlab
file_server(https://files.photo.gallery/demo)
wordpress
shadowsoks
resilio
syncthing
transmission
## 参照 ## 参照
#### http://einverne.github.io/post/2017/02/docker-nginx-host-multiple-websites.html #### http://einverne.github.io/post/2017/02/docker-nginx-host-multiple-websites.html
+33
View File
@@ -0,0 +1,33 @@
version: '3'
services:
db:
image: mariadb
volumes:
- ./images/mariadb:/var/lib/mysql:rw
restart: always
environment:
MYSQL_ROOT_PASSWORD: chevereto_root
MYSQL_DATABASE: chevereto
MYSQL_USER: chevereto
MYSQL_PASSWORD: chevereto
chevereto:
depends_on:
- db
image: nmtan/chevereto
restart: always
environment:
CHEVERETO_DB_HOST: db
CHEVERETO_DB_USERNAME: chevereto
CHEVERETO_DB_PASSWORD: chevereto9527@!
CHEVERETO_DB_NAME: chevereto
CHEVERETO_DB_PREFIX: chv_
VIRTUAL_HOST: example.test.com
volumes:
- ./images/cheverto:/var/www/html/images:rw #需要给这个images 777权限,如果还是不行需要到容器内( docker exec -ti 容器id bash)给images文件777权限
networks:
default:
external:
name: nginx-proxy
+17
View File
@@ -0,0 +1,17 @@
version: '3'
services:
gitlab:
image: 'gitlab/gitlab-ce'
restart: unless-stopped
hostname: 'git.motoko.site' #记得修改这里
container_name: gitlab
environment:
VIRTUAL_HOST: example.test.com
TZ: 'Asia/Shanghai'
GITLAB_OMNIBUS_CONFIG: |
external_url 'http://example.test.com' #记得修改这里
gitlab_rails['time_zone'] = 'Asia/Shanghai'
volumes:
- /srv/gitlab/config:/etc/gitlab
- /srv/gitlab/logs:/var/log/gitlab
- /srv/gitlab/data:/var/opt/gitlab
+1
View File
@@ -0,0 +1 @@
docker run --restart=always -e PASSWORD=1uyzxqwer@321 -e METHOD=aes-256-gcm -p 1888:8388 -p 1888:8388/udp -d shadowsocks/shadowsocks-libev
+14
View File
@@ -0,0 +1,14 @@
version: '3'
services:
resilio_sync:
image: resilio/sync
restart: always
ports:
- 9999:8888
- 55555:55555/tcp
- 55555:55555/udp
volumes:
- ./sync_storage:/mnt/sync/storage # Sync storage folder
- ./sync.conf:/mnt/sync/sync.conf # Configuration file
- /root/auto-server/use_ssl/file_server/app/files/syn:/mnt/sync/data # folder with data to be shared
+19
View File
@@ -0,0 +1,19 @@
version: "2.1"
services:
syncthing:
image: ghcr.io/linuxserver/syncthing
container_name: syncthing
hostname: syncthing #optional 一般用ip访问就可以
environment:
- PUID=0 # 用户/用户组id 0为root,这个地方如果用新建用户 记得给授权 要不运行起来没有权限操作文件
- PGID=0 # 用户/用户组id 0为root,这个地方如果用新建用户 记得给授权 要不运行起来没有权限操作文件
- TZ=Europe/London
volumes:
- ./path/to/appdata/config:/config # 操作的文件地址,需要共享出去 或者下载过来的文件存放地址
- ./path/to/data1:/data1
- ./path/to/data2:/data2
ports:
- 8384:8384
- 22000:22000
- 21027:21027/udp
restart: unless-stopped
+21
View File
@@ -0,0 +1,21 @@
version: "2.1"
services:
transmission:
image: ghcr.io/linuxserver/transmission
container_name: transmission
environment:
- PUID=1000 # 用户/用户组id 0为root,这个地方如果用新建用户 记得给授权 要不运行起来没有权限操作文件
- PGID=1000 # 用户/用户组id 0为root,这个地方如果用新建用户 记得给授权 要不运行起来没有权限操作文件
- TZ=Europe/London
- TRANSMISSION_WEB_HOME=/combustion-release/ #optional
- USER=username #optional
- PASS=password #optional
volumes:
- ./data/config:/config
- ./data/downloads:/downloads
- ./data/watch:/watch
ports:
- 9091:9091
- 51413:51413
- 51413:51413/udp
restart: unless-stopped
+35
View File
@@ -0,0 +1,35 @@
version: '3'
services:
db:
image: mariadb
volumes:
- ./images/mariadb:/var/lib/mysql:rw
restart: always
environment:
MYSQL_ROOT_PASSWORD: chevereto_root
MYSQL_DATABASE: chevereto
MYSQL_USER: chevereto
MYSQL_PASSWORD: chevereto
chevereto:
depends_on:
- db
image: nmtan/chevereto
restart: always
environment:
CHEVERETO_DB_HOST: db
CHEVERETO_DB_USERNAME: chevereto
CHEVERETO_DB_PASSWORD: chevereto9527@!
CHEVERETO_DB_NAME: chevereto
CHEVERETO_DB_PREFIX: chv_
VIRTUAL_HOST: example.test.com
LETSENCRYPT_HOST: example.test.com
DEFAULT_EMAIL: xxx@gmail.com
volumes:
- ./images/cheverto:/var/www/html/images:rw #需要给这个images 777权限,如果还是不行需要到容器内( docker exec -ti 容器id bash)给images文件777权限
networks:
default:
external:
name: nginx-proxy
+19
View File
@@ -0,0 +1,19 @@
version: '3'
services:
gitlab:
image: 'gitlab/gitlab-ce'
restart: unless-stopped
hostname: 'git.motoko.site' #记得修改这里
container_name: gitlab
environment:
VIRTUAL_HOST: example.test.com
LETSENCRYPT_HOST: example.test.com
DEFAULT_EMAIL: xxx@gmail.com
TZ: 'Asia/Shanghai'
GITLAB_OMNIBUS_CONFIG: |
external_url 'https://example.test.com' #记得修改这里
gitlab_rails['time_zone'] = 'Asia/Shanghai'
volumes:
- /srv/gitlab/config:/etc/gitlab
- /srv/gitlab/logs:/var/log/gitlab
- /srv/gitlab/data:/var/opt/gitlab