添加acme,frps和nginx项目
This commit is contained in:
@@ -7,10 +7,19 @@ Project("{D954291E-2A0B-460D-934E-DC6B0785DB48}") = "Gitea", "Gitea\Gitea.shproj
|
|||||||
EndProject
|
EndProject
|
||||||
Project("{D954291E-2A0B-460D-934E-DC6B0785DB48}") = "NginxAndLetsencrypt", "NginxAndLetsencrypt\NginxAndLetsencrypt.shproj", "{57D7CB76-1A45-4A68-A84F-7E5034096F19}"
|
Project("{D954291E-2A0B-460D-934E-DC6B0785DB48}") = "NginxAndLetsencrypt", "NginxAndLetsencrypt\NginxAndLetsencrypt.shproj", "{57D7CB76-1A45-4A68-A84F-7E5034096F19}"
|
||||||
EndProject
|
EndProject
|
||||||
|
Project("{D954291E-2A0B-460D-934E-DC6B0785DB48}") = "frps", "frps\frps.shproj", "{267AF5A6-ED6B-46C9-BC52-46988686265A}"
|
||||||
|
EndProject
|
||||||
|
Project("{D954291E-2A0B-460D-934E-DC6B0785DB48}") = "nginx", "nginx\nginx.shproj", "{36F1D233-DF91-469D-B27B-157982E326F0}"
|
||||||
|
EndProject
|
||||||
|
Project("{D954291E-2A0B-460D-934E-DC6B0785DB48}") = "acme", "acme\acme.shproj", "{E02725FD-AEB7-4D76-9390-E083E78237C5}"
|
||||||
|
EndProject
|
||||||
Global
|
Global
|
||||||
GlobalSection(SharedMSBuildProjectFiles) = preSolution
|
GlobalSection(SharedMSBuildProjectFiles) = preSolution
|
||||||
|
frps\frps.projitems*{267af5a6-ed6b-46c9-bc52-46988686265a}*SharedItemsImports = 13
|
||||||
|
nginx\nginx.projitems*{36f1d233-df91-469d-b27b-157982e326f0}*SharedItemsImports = 13
|
||||||
NginxAndLetsencrypt\NginxAndLetsencrypt.projitems*{57d7cb76-1a45-4a68-a84f-7e5034096f19}*SharedItemsImports = 13
|
NginxAndLetsencrypt\NginxAndLetsencrypt.projitems*{57d7cb76-1a45-4a68-a84f-7e5034096f19}*SharedItemsImports = 13
|
||||||
Gitea\Gitea.projitems*{816bea29-9cdb-439d-bc36-d2dd6c52bc69}*SharedItemsImports = 13
|
Gitea\Gitea.projitems*{816bea29-9cdb-439d-bc36-d2dd6c52bc69}*SharedItemsImports = 13
|
||||||
|
acme\acme.projitems*{e02725fd-aeb7-4d76-9390-e083e78237c5}*SharedItemsImports = 13
|
||||||
EndGlobalSection
|
EndGlobalSection
|
||||||
GlobalSection(SolutionProperties) = preSolution
|
GlobalSection(SolutionProperties) = preSolution
|
||||||
HideSolutionNode = FALSE
|
HideSolutionNode = FALSE
|
||||||
|
|||||||
62
acme/README.md
Normal file
62
acme/README.md
Normal file
@@ -0,0 +1,62 @@
|
|||||||
|
## 前期准备
|
||||||
|
|
||||||
|
主要是接下来安装acme时的gfw问题。如果是境内服务器,则有可能需要如下步骤。
|
||||||
|
|
||||||
|
1. 小飞机的局域网内的代理地址。因为get.acme.sh中包含的脚本请求地址可能会被墙
|
||||||
|
|
||||||
|
`export http_proxy="172.18.184.139:10082"`
|
||||||
|
|
||||||
|
`export https_proxy="172.18.184.139:10082"`
|
||||||
|
|
||||||
|
2. 是因为据说在此加入上面的export命令可以实现开机自动开启代理。但没有尝试
|
||||||
|
|
||||||
|
`vim /etc/bashrc`
|
||||||
|
|
||||||
|
3. 同上
|
||||||
|
|
||||||
|
`vim /etc/profile`
|
||||||
|
|
||||||
|
## 安装acme
|
||||||
|
|
||||||
|
1. 安装acme
|
||||||
|
|
||||||
|
`curl https://get.acme.sh | sh`
|
||||||
|
|
||||||
|
2. 将dns api的key和secret存入环境变量。此处为阿里云,事前已经给对应SAM子账户分配了FullDnsApiAccess的权限。参见: https://blog.csdn.net/chen249191508/article/details/98088553
|
||||||
|
|
||||||
|
`export Ali_Key="key"`
|
||||||
|
|
||||||
|
`export Ali_Secret="secret"`
|
||||||
|
|
||||||
|
参见保密区域获取真实内容。注意,阿里云的控制台中,这两个值只在添加SAM子账户的时候出现,需要马上自行保存
|
||||||
|
|
||||||
|
## 获取证书
|
||||||
|
|
||||||
|
1. 申请安装证书。加--debug参数可以显示更多细节
|
||||||
|
|
||||||
|
`acme.sh --debug --issue --dns dns_ali -d dev.woyue.org -d *.dev.woyue.org`
|
||||||
|
|
||||||
|
2. 安装完毕后,检验是否配置自动任务
|
||||||
|
|
||||||
|
`crontab -e`
|
||||||
|
|
||||||
|
3. 确认当前证书
|
||||||
|
|
||||||
|
`acme.sh --list`
|
||||||
|
|
||||||
|
## 安装证书
|
||||||
|
|
||||||
|
1. 复制证书:
|
||||||
|
|
||||||
|
mkdir -p /srv/certbot/conf/live/dev.woyue.org
|
||||||
|
|
||||||
|
acme.sh --installcert -d dev.woyue.org -d *.dev.woyue.org \
|
||||||
|
--key-file /srv/certbot/conf/live/dev.woyue.org/privkey.pem \
|
||||||
|
--fullchain-file /srv/certbot/conf/live/dev.woyue.org/fullchain.pem \
|
||||||
|
--reloadcmd "docker restart nginxdocker_nginx_1"
|
||||||
|
|
||||||
|
注意,最后的nginxdocker_nginx_1为nginx容器的名称。请根据实际情况修改。**或不加此参数,手动重启nginx**。
|
||||||
|
|
||||||
|
2. 生成:dhparams文件
|
||||||
|
|
||||||
|
openssl dhparam -out /srv/certbot/conf/ssl-dhparams.pem 2048
|
||||||
18
acme/acme.projitems
Normal file
18
acme/acme.projitems
Normal file
@@ -0,0 +1,18 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||||
|
<PropertyGroup>
|
||||||
|
<MSBuildAllProjects>$(MSBuildAllProjects);$(MSBuildThisFileFullPath)</MSBuildAllProjects>
|
||||||
|
<HasSharedItems>true</HasSharedItems>
|
||||||
|
<SharedGUID>e02725fd-aeb7-4d76-9390-e083e78237c5</SharedGUID>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Label="Configuration">
|
||||||
|
<Import_RootNamespace>acme</Import_RootNamespace>
|
||||||
|
</PropertyGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<None Include="$(MSBuildThisFileDirectory)README.md" />
|
||||||
|
</ItemGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<Folder Include="$(MSBuildThisFileDirectory)certbot\conf\" />
|
||||||
|
<Folder Include="$(MSBuildThisFileDirectory)certbot\www\" />
|
||||||
|
</ItemGroup>
|
||||||
|
</Project>
|
||||||
13
acme/acme.shproj
Normal file
13
acme/acme.shproj
Normal file
@@ -0,0 +1,13 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<Project ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||||
|
<PropertyGroup Label="Globals">
|
||||||
|
<ProjectGuid>e02725fd-aeb7-4d76-9390-e083e78237c5</ProjectGuid>
|
||||||
|
<MinimumVisualStudioVersion>14.0</MinimumVisualStudioVersion>
|
||||||
|
</PropertyGroup>
|
||||||
|
<Import Project="$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props" Condition="Exists('$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props')" />
|
||||||
|
<Import Project="$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion)\CodeSharing\Microsoft.CodeSharing.Common.Default.props" />
|
||||||
|
<Import Project="$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion)\CodeSharing\Microsoft.CodeSharing.Common.props" />
|
||||||
|
<PropertyGroup />
|
||||||
|
<Import Project="acme.projitems" Label="Shared" />
|
||||||
|
<Import Project="$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion)\CodeSharing\Microsoft.CodeSharing.CSharp.targets" />
|
||||||
|
</Project>
|
||||||
15
frps/README.md
Normal file
15
frps/README.md
Normal file
@@ -0,0 +1,15 @@
|
|||||||
|
## 前期准备
|
||||||
|
|
||||||
|
1. 用acme搞定泛域名ca证书。参看acme项目。
|
||||||
|
2. 部署nginx docker。参看nginx项目。
|
||||||
|
3. 根据nginx docker的网络设置,对应确定自己的docker-compose.yml文件中的对应内容设置正确。其中包括:
|
||||||
|
- nginx所在的网络名称。配置到自己的docker-compose.yml文件中的网络定义中的external->name中去。
|
||||||
|
- 根据网络定义,设定自己的固定ip。
|
||||||
|
- 复制conf.d下的文件到nginx配置目录下的conf.d下。
|
||||||
|
- 确保刚复制的文件配置正确。如其中证书所在路径应符合之前acme复制证书时的目标目录。
|
||||||
|
|
||||||
|
## 安装
|
||||||
|
|
||||||
|
执行docker-compose up -d
|
||||||
|
|
||||||
|
并验证是否成功。
|
||||||
35
frps/conf.d/frps.conf
Normal file
35
frps/conf.d/frps.conf
Normal file
@@ -0,0 +1,35 @@
|
|||||||
|
server {
|
||||||
|
listen 80;
|
||||||
|
server_name *.dev.woyue.org;
|
||||||
|
server_tokens off;
|
||||||
|
|
||||||
|
location /.well-known/acme-challenge/ {
|
||||||
|
root /var/www/certbot;
|
||||||
|
}
|
||||||
|
|
||||||
|
location / {
|
||||||
|
return 301 https://$host$request_uri;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
server {
|
||||||
|
listen 443 ssl;
|
||||||
|
server_name *.dev.woyue.org;
|
||||||
|
server_tokens off;
|
||||||
|
|
||||||
|
ssl_certificate /etc/letsencrypt/live/dev.woyue.org/fullchain.pem;
|
||||||
|
ssl_certificate_key /etc/letsencrypt/live/dev.woyue.org/privkey.pem;
|
||||||
|
#include /etc/letsencrypt/options-ssl-nginx.conf;
|
||||||
|
ssl_dhparam /etc/letsencrypt/ssl-dhparams.pem;
|
||||||
|
|
||||||
|
location / {
|
||||||
|
#ip address below should changed accordingly.
|
||||||
|
proxy_pass http://172.20.0.3:8090;
|
||||||
|
proxy_set_header Host $http_host;
|
||||||
|
proxy_set_header X-Real-IP $remote_addr;
|
||||||
|
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
|
||||||
|
proxy_http_version 1.1;
|
||||||
|
proxy_set_header Upgrade $http_upgrade;
|
||||||
|
proxy_set_header Connection $http_connection;
|
||||||
|
}
|
||||||
|
}
|
||||||
17
frps/frps.projitems
Normal file
17
frps/frps.projitems
Normal file
@@ -0,0 +1,17 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||||
|
<PropertyGroup>
|
||||||
|
<MSBuildAllProjects>$(MSBuildAllProjects);$(MSBuildThisFileFullPath)</MSBuildAllProjects>
|
||||||
|
<HasSharedItems>true</HasSharedItems>
|
||||||
|
<SharedGUID>267af5a6-ed6b-46c9-bc52-46988686265a</SharedGUID>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Label="Configuration">
|
||||||
|
<Import_RootNamespace>frps</Import_RootNamespace>
|
||||||
|
</PropertyGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<None Include="$(MSBuildThisFileDirectory)conf.d\frps.conf" />
|
||||||
|
<None Include="$(MSBuildThisFileDirectory)frps\conf\frps.ini" />
|
||||||
|
<None Include="$(MSBuildThisFileDirectory)frps\docker-compose.yml" />
|
||||||
|
<None Include="$(MSBuildThisFileDirectory)README.md" />
|
||||||
|
</ItemGroup>
|
||||||
|
</Project>
|
||||||
13
frps/frps.shproj
Normal file
13
frps/frps.shproj
Normal file
@@ -0,0 +1,13 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<Project ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||||
|
<PropertyGroup Label="Globals">
|
||||||
|
<ProjectGuid>267af5a6-ed6b-46c9-bc52-46988686265a</ProjectGuid>
|
||||||
|
<MinimumVisualStudioVersion>14.0</MinimumVisualStudioVersion>
|
||||||
|
</PropertyGroup>
|
||||||
|
<Import Project="$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props" Condition="Exists('$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props')" />
|
||||||
|
<Import Project="$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion)\CodeSharing\Microsoft.CodeSharing.Common.Default.props" />
|
||||||
|
<Import Project="$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion)\CodeSharing\Microsoft.CodeSharing.Common.props" />
|
||||||
|
<PropertyGroup />
|
||||||
|
<Import Project="frps.projitems" Label="Shared" />
|
||||||
|
<Import Project="$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion)\CodeSharing\Microsoft.CodeSharing.CSharp.targets" />
|
||||||
|
</Project>
|
||||||
67
frps/frps/conf/frps.ini
Normal file
67
frps/frps/conf/frps.ini
Normal file
@@ -0,0 +1,67 @@
|
|||||||
|
# [common] is integral section
|
||||||
|
[common]
|
||||||
|
# A literal address or host name for IPv6 must be enclosed
|
||||||
|
# in square brackets, as in "[::1]:80", "[ipv6-host]:http" or "[ipv6-host%zone]:80"
|
||||||
|
bind_addr = 0.0.0.0
|
||||||
|
bind_port = 7000
|
||||||
|
|
||||||
|
# udp port to help make udp hole to penetrate nat
|
||||||
|
bind_udp_port = 7001
|
||||||
|
|
||||||
|
# udp port used for kcp protocol, it can be same with 'bind_port'
|
||||||
|
# if not set, kcp is disabled in frps
|
||||||
|
kcp_bind_port = 7000
|
||||||
|
|
||||||
|
# specify which address proxy will listen for, default value is same with bind_addr
|
||||||
|
# proxy_bind_addr = 127.0.0.1
|
||||||
|
|
||||||
|
# if you want to support virtual host, you must set the http port for listening (optional)
|
||||||
|
# Note: http port and https port can be same with bind_port
|
||||||
|
vhost_http_port = 8090
|
||||||
|
vhost_https_port = 8443
|
||||||
|
|
||||||
|
# response header timeout(seconds) for vhost http server, default is 60s
|
||||||
|
# vhost_http_timeout = 60
|
||||||
|
|
||||||
|
# set dashboard_addr and dashboard_port to view dashboard of frps
|
||||||
|
# dashboard_addr's default value is same with bind_addr
|
||||||
|
# dashboard is available only if dashboard_port is set
|
||||||
|
dashboard_addr = 0.0.0.0
|
||||||
|
dashboard_port = 7500
|
||||||
|
|
||||||
|
# dashboard user and passwd for basic auth protect, if not set, both default value is admin
|
||||||
|
dashboard_user = hmo
|
||||||
|
dashboard_pwd = Dm19000o
|
||||||
|
|
||||||
|
# dashboard assets directory(only for debug mode)
|
||||||
|
# assets_dir = ./static
|
||||||
|
# console or real logFile path like ./frps.log
|
||||||
|
log_file = ./frps.log
|
||||||
|
|
||||||
|
# trace, debug, info, warn, error
|
||||||
|
log_level = info
|
||||||
|
|
||||||
|
log_max_days = 3
|
||||||
|
|
||||||
|
# auth token
|
||||||
|
token = 83550348
|
||||||
|
|
||||||
|
# heartbeat configure, it's not recommended to modify the default value
|
||||||
|
# the default value of heartbeat_timeout is 90
|
||||||
|
# heartbeat_timeout = 90
|
||||||
|
|
||||||
|
# only allow frpc to bind ports you list, if you set nothing, there won't be any limit
|
||||||
|
allow_ports = 43000-43010
|
||||||
|
|
||||||
|
# pool_count in each proxy will change to max_pool_count if they exceed the maximum value
|
||||||
|
max_pool_count = 5
|
||||||
|
|
||||||
|
# max ports can be used for each client, default value is 0 means no limit
|
||||||
|
max_ports_per_client = 0
|
||||||
|
|
||||||
|
# if subdomain_host is not empty, you can set subdomain when type is http or https in frpc's configure file
|
||||||
|
# when subdomain is test, the host used by routing is test.frps.com
|
||||||
|
subdomain_host = dev.woyue.org
|
||||||
|
|
||||||
|
# if tcp stream multiplexing is used, default is true
|
||||||
|
tcp_mux = true
|
||||||
25
frps/frps/docker-compose.yml
Normal file
25
frps/frps/docker-compose.yml
Normal file
@@ -0,0 +1,25 @@
|
|||||||
|
|
||||||
|
version: "3.5"
|
||||||
|
|
||||||
|
networks:
|
||||||
|
default:
|
||||||
|
external:
|
||||||
|
name: nginx_firstnet
|
||||||
|
|
||||||
|
services:
|
||||||
|
server:
|
||||||
|
image: "ruiny/frps:latest"
|
||||||
|
restart: always
|
||||||
|
networks:
|
||||||
|
default:
|
||||||
|
ipv4_address: 172.20.0.3
|
||||||
|
volumes:
|
||||||
|
- ./conf:/var/frp/conf
|
||||||
|
ports:
|
||||||
|
- "7000:7000"
|
||||||
|
- "7500:7500"
|
||||||
|
- "7001:7001"
|
||||||
|
- "8089:80"
|
||||||
|
- "8443:43"
|
||||||
|
- "43000-43010:43000-43010/udp"
|
||||||
|
- "43000-43010:43000-43010/tcp"
|
||||||
34
nginx/data/conf/conf.d/sample.conf.bk
Normal file
34
nginx/data/conf/conf.d/sample.conf.bk
Normal file
@@ -0,0 +1,34 @@
|
|||||||
|
server {
|
||||||
|
listen 80;
|
||||||
|
server_name git.woyue.org;
|
||||||
|
server_tokens off;
|
||||||
|
|
||||||
|
location /.well-known/acme-challenge/ {
|
||||||
|
root /var/www/certbot;
|
||||||
|
}
|
||||||
|
|
||||||
|
location / {
|
||||||
|
return 301 https://$host$request_uri;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
server {
|
||||||
|
listen 443 ssl;
|
||||||
|
server_name git.woyue.org;
|
||||||
|
server_tokens off;
|
||||||
|
|
||||||
|
ssl_certificate /etc/letsencrypt/live/git.woyue.org/fullchain.pem;
|
||||||
|
ssl_certificate_key /etc/letsencrypt/live/git.woyue.org/privkey.pem;
|
||||||
|
include /etc/letsencrypt/options-ssl-nginx.conf;
|
||||||
|
ssl_dhparam /etc/letsencrypt/ssl-dhparams.pem;
|
||||||
|
|
||||||
|
location / {
|
||||||
|
proxy_pass http://172.20.0.3:3000;
|
||||||
|
proxy_set_header Host $http_host;
|
||||||
|
proxy_set_header X-Real-IP $remote_addr;
|
||||||
|
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
|
||||||
|
proxy_http_version 1.1;
|
||||||
|
proxy_set_header Upgrade $http_upgrade;
|
||||||
|
proxy_set_header Connection $http_connection;
|
||||||
|
}
|
||||||
|
}
|
||||||
40
nginx/data/conf/nginx.conf
Normal file
40
nginx/data/conf/nginx.conf
Normal file
@@ -0,0 +1,40 @@
|
|||||||
|
user root;
|
||||||
|
worker_processes 1;
|
||||||
|
error_log /var/log/nginx/error.log warn;
|
||||||
|
pid /var/run/nginx.pid;
|
||||||
|
|
||||||
|
events {
|
||||||
|
worker_connections 1024;
|
||||||
|
}
|
||||||
|
|
||||||
|
http {
|
||||||
|
include /etc/nginx/mime.types;
|
||||||
|
default_type application/octet-stream;
|
||||||
|
|
||||||
|
log_format main '$remote_addr - $remote_user [$time_local] "$request" '
|
||||||
|
'$status $body_bytes_sent "$http_referer" '
|
||||||
|
'"$http_user_agent" "$http_x_forwarded_for"';
|
||||||
|
access_log /var/log/nginx/access.log main;
|
||||||
|
|
||||||
|
sendfile on;
|
||||||
|
#tcp_nopush on;
|
||||||
|
|
||||||
|
keepalive_timeout 65;
|
||||||
|
autoindex on;
|
||||||
|
gzip on;
|
||||||
|
gzip_min_length 1k;
|
||||||
|
gzip_buffers 4 16k;
|
||||||
|
#gzip_http_version 1.0;
|
||||||
|
gzip_comp_level 2;
|
||||||
|
gzip_types text/plain application/javascript application/x-javascript text/css application/xml text/javascript application/x-httpd-php image/jpeg image/gif image/png;
|
||||||
|
gzip_vary off;
|
||||||
|
gzip_disable "MSIE [1-6]\.";
|
||||||
|
|
||||||
|
client_max_body_size 100M;
|
||||||
|
client_header_buffer_size 128k;
|
||||||
|
large_client_header_buffers 4 128k;
|
||||||
|
|
||||||
|
|
||||||
|
include /etc/nginx/conf.d/*.conf;
|
||||||
|
|
||||||
|
}
|
||||||
31
nginx/docker-compose.yml
Normal file
31
nginx/docker-compose.yml
Normal file
@@ -0,0 +1,31 @@
|
|||||||
|
|
||||||
|
version: "3.5"
|
||||||
|
|
||||||
|
#设定network. 其他应用应设置network的external为本网络,以和nginx服务器互通。
|
||||||
|
networks:
|
||||||
|
firstnet:
|
||||||
|
name:nginx_firstnet
|
||||||
|
ipam:
|
||||||
|
config:
|
||||||
|
- subnet: 172.20.0.0/16
|
||||||
|
|
||||||
|
services:
|
||||||
|
nginx:
|
||||||
|
image: nginx:latest
|
||||||
|
restart: unless-stopped
|
||||||
|
volumes:
|
||||||
|
- ./data/conf/conf.d:/etc/nginx/conf.d
|
||||||
|
- ./data/conf/nginx.conf:/etc/nginx/nginx.conf
|
||||||
|
- ./data/html:/usr/share/nginx/html
|
||||||
|
- ./data/logs:/var/log/nginx
|
||||||
|
# 此处的配置取决于conf.d下的配置文件中如何配置证书路径。例如:“ssl_certificate /etc/letsencrypt/live/git.woyue.org/fullchain.pem;”等
|
||||||
|
- ../certbot/conf:/etc/letsencrypt
|
||||||
|
# 此处的配置取决于conf.d下的配置文件中的配置“location /.well-known/acme-challenge/”,可参看sample.conf:
|
||||||
|
- ../certbot/www:/var/www/certbot
|
||||||
|
networks:
|
||||||
|
firstnet:
|
||||||
|
ipv4_address: 172.20.0.2
|
||||||
|
ports:
|
||||||
|
- "80:80"
|
||||||
|
- "443:443"
|
||||||
|
command: "/bin/sh -c 'while :; do sleep 6h & wait $${!}; nginx -s reload; done & nginx -g \"daemon off;\"'"
|
||||||
19
nginx/nginx.projitems
Normal file
19
nginx/nginx.projitems
Normal file
@@ -0,0 +1,19 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||||
|
<PropertyGroup>
|
||||||
|
<MSBuildAllProjects>$(MSBuildAllProjects);$(MSBuildThisFileFullPath)</MSBuildAllProjects>
|
||||||
|
<HasSharedItems>true</HasSharedItems>
|
||||||
|
<SharedGUID>36f1d233-df91-469d-b27b-157982e326f0</SharedGUID>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Label="Configuration">
|
||||||
|
<Import_RootNamespace>nginx</Import_RootNamespace>
|
||||||
|
</PropertyGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<None Include="$(MSBuildThisFileDirectory)docker-compose.yml" />
|
||||||
|
<None Include="$(MSBuildThisFileDirectory)data\conf\conf.d\sample.conf.bk" />
|
||||||
|
<None Include="$(MSBuildThisFileDirectory)data\conf\nginx.conf" />
|
||||||
|
</ItemGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<Folder Include="$(MSBuildThisFileDirectory)data\" />
|
||||||
|
</ItemGroup>
|
||||||
|
</Project>
|
||||||
13
nginx/nginx.shproj
Normal file
13
nginx/nginx.shproj
Normal file
@@ -0,0 +1,13 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<Project ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||||
|
<PropertyGroup Label="Globals">
|
||||||
|
<ProjectGuid>36f1d233-df91-469d-b27b-157982e326f0</ProjectGuid>
|
||||||
|
<MinimumVisualStudioVersion>14.0</MinimumVisualStudioVersion>
|
||||||
|
</PropertyGroup>
|
||||||
|
<Import Project="$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props" Condition="Exists('$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props')" />
|
||||||
|
<Import Project="$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion)\CodeSharing\Microsoft.CodeSharing.Common.Default.props" />
|
||||||
|
<Import Project="$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion)\CodeSharing\Microsoft.CodeSharing.Common.props" />
|
||||||
|
<PropertyGroup />
|
||||||
|
<Import Project="nginx.projitems" Label="Shared" />
|
||||||
|
<Import Project="$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion)\CodeSharing\Microsoft.CodeSharing.CSharp.targets" />
|
||||||
|
</Project>
|
||||||
Reference in New Issue
Block a user