赞
踩
sudo mkdir -p /home/docker/codimd
sudo docker pull linuxserver/mariadb:latest
sudo docker pull linuxserver/codimd:latest
拉取了两个镜像,一个数据库,一个目标程序。
进入目标文件夹
cd /home/docker/codimd
sudo vim docker-compose.yml
将以下内容写入文件中
version: "3" services: mariadb: image: linuxserver/mariadb:latest container_name: codimd_mariadb restart: always volumes: - ./db/config:/config environment: - MYSQL_ROOT_PASSWORD=testpassword - MYSQL_DATABASE=codimd - MYSQL_USER=codimd - MYSQL_PASSWORD=testpassword - PGID=1000 - PUID=1000 - TZ=Aisa/Shanghai codimd: image: linuxserver/codimd:latest container_name: codimd restart: always depends_on: - mariadb volumes: - ./codimd/config:/config environment: - DB_HOST=mariadb - DB_USER=codimd - DB_PASS=testpassword - DB_NAME=codimd - DB_PORT=3306 - PGID=1000 - PUID=1000 - TZ=Aisa/Shanghai ports: - "4525:3000"
数据库密码
你根据自己的需求更改,这里使用testpassword
sudo docker-compose up -d
没有看到红色就是启动成功了。
我这里是Ubuntu系统,使用自带的UFW防火墙
sudo ufw allow 4525 comment "Codimd在线Markdown"
打开服务器的安全组,设置入站方向规则,添加一条4525端口的规则,协议选择TCP就行。
打开浏览器http://IP:4525
打开域名商,添加一条记录
sudo vim /usr/local/nginx/conf/conf.d/conf.default
将以下内容下入文件
# Codimd在线Markdown server { listen 80; server_name md.hikki.site; return 301 https://$server_name$request_uri; } server { listen 443 ssl; listen [::]:443 ssl; server_name md.hikki.site; ssl_certificate cert/md.hikki.site/cert.pem; ssl_certificate_key cert/md.hikki.site/key.pem; ssl_session_timeout 5m; ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4; #表示使用的加密套件的类型。 ssl_protocols TLSv1.1 TLSv1.2 TLSv1.3; #表示使用的TLS协议的类型,您需要自行评估是否配置TLSv1.1协议。 ssl_prefer_server_ciphers on; location / { proxy_set_header Host $host; 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; proxy_pass http://localhost:4525; } }
添加SSL主要参考本站:https://blog.hikki.site/2e63f4a4.html
以下所有操作都需要在管理员权限下进行
acme.sh --issue --dns dns_ali -d md.hikki.site
mkdir -p /usr/local/nginx/conf/cert/md.hikki.site/
acme.sh --install-cert -d md.hikki.site --key-file /usr/local/nginx/conf/cert/md.hikki.site/key.pem --fullchain-file /usr/local/nginx/conf/cert/md.hikki.site/cert.pem --reloadcmd "/usr/local/nginx/sbin/nginx -s reload"
访问https://md.hikki.site成功。
在上面已经配置了域名解析做了反向代理,这样就不需要端口访问了,就可以关闭端口了,减少服务器的暴露端口数量,提高服务器的安全性。
我这里是Ubuntu系统,使用自带的UFW防火墙
sudo ufw delete 4525
打开服务器的安全组,设置入站方向规则,删除刚刚添加的入站端口。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。