YOURLS 部署
1. 环境配置
mkdir -p /docker/yourls/html/user/languages /docker/mysql-yourls/data /docker/mysql-yourls/conf /docker/mysql-yourls/log && \
tee /docker/yourls/.env <<-'EOF'
YOURLS_COOKIEKEY=${YOURLS_COOKIEKEY} # 访问https://api.yourls.org/services/cookiekey/1.0/生成
YOURLS_USER=${YOURLS_USER}
YOURLS_PASS=${YOURLS_PASS}
YOURLS_SITE=${YOURLS_SITE} # 需替换为自己的域名,需搭配反代
MYSQL_ROOT_PASSWORD=<MYSQL_ROOT_PASSWORD>
MYSQL_DATABASE=<MYSQL_DATABASE>
MYSQL_USER=<MYSQL_USER>
MYSQL_PASSWORD=<MYSQL_PASSWORD>
EOF
# 中文,上传zh_CN.mo、zh_CN.po到/docker/yourls/html/user/languages(下载地址——https://github.com/coppea/yourls-zh_CN)
2. 编辑 docker-compose.yml
tee /docker/yourls/docker-compose.yml <<-'EOF'
services:
yourls:
image: yourls:latest
container_name: yourls
restart: unless-stopped
environment:
YOURLS_DB_HOST: mysql-yourls
YOURLS_DB_NAME: ${MYSQL_DATABASE}
YOURLS_DB_USER: ${MYSQL_USER}
YOURLS_DB_PASS: ${MYSQL_PASSWORD}
YOURLS_UNIQUE_URLS: false
YOURLS_LANG: zh_CN
YOURLS_COOKIEKEY: ${YOURLS_COOKIEKEY}
YOURLS_USER: ${YOURLS_USER}
YOURLS_PASS: ${YOURLS_PASS}
YOURLS_SITE: ${YOURLS_SITE}
YOURLS_HOURS_OFFSET: 8
volumes:
- /docker/yourls/html:/var/www/html
depends_on:
- mysql-yourls
networks:
- internal
mysql-yourls:
image: mysql:5.7
container_name: mysql-yourls
restart: unless-stopped
ports:
- "8001:3306"
environment:
MYSQL_ROOT_PASSWORD: ${MYSQL_ROOT_PASSWORD}
MYSQL_DATABASE: ${MYSQL_DATABASE}
MYSQL_USER: ${MYSQL_USER}
MYSQL_PASSWORD: ${MYSQL_PASSWORD}
volumes:
- /docker/mysql-yourls/data:/var/lib/mysql
- /docker/mysql-yourls/log:/var/log/mysql:rw
- /docker/mysql-yourls/conf/:/etc/mysql/conf.d
networks:
- internal
networks:
internal:
external: true
name: internal
EOF
3. 运行 docker compose
cd /docker/yourls/ && \
docker compose up -d
4. 其他
# backup
cd /docker/yourls/ && \
docker compose stop && \
docker compose rm -f && \
docker rmi yourls:latest && \
docker rmi mysql:5.7 && \
rm -rf /docker/yourls /docker/mysql-yourls
# 查看日志
docker compose logs
&NPM
Domain Names
<域名>
Forward Hostname / IP
yourls
Forward Port
80
&NaviCat
连接名
YOURLS
主机
<域名>
端口
8001
用户名
<MYSQL_USER>
密码
<MYSQL_PASSWORD>