Docker部署自己的短链接服务

Logo

1. 简单介绍

  YOURLS 是一个有 14 年历史的可以让我们在自己的服务器上运行的 URL 缩短服务,它是基于 PHP + Mysql 的,可以直接部署也支持 Docker 部署。

  先看看我部署成的效果吧!它支持短链接的流量时间统计、流量来源国家、直接点击短链接还是被其他小伙伴转载引荐过来的饼状图统计信息,还有 6 款官方的插件可以选择。

  【GitHub 地址】  【Docker 镜像地址】

主界面

流量统计

流量地点

流量来源

官方插件

2. 推荐使用 Docker-compose 部署

  首先确保自己要部署在的机器上已经安装了 docker 和 docker-compose,然后挑一个自己喜欢的路径创建 yourls 文件夹

# 创建一个 docker-compose.yml 文件,当然可以不用 vim,内容见下:
mkdir yourls && cd yourls
vim docker-compose.yml
version: "3.5"
services:

  mysql:
    image: mysql:5.7.22               # 如果遇到不正确的数据库配置,或无法连接到数据库PDOException: SQLSTATE[HY000] [1045] 用户'yourls'@'yourls_service.yourls_default'的访问被拒绝(使用密码:是)   可以把5.7.22 改为 5.7
    environment:
      - MYSQL_ROOT_PASSWORD=my-secret-pw
      - MYSQL_DATABASE=yourls
      - MYSQL_USER=yourls
      - MYSQL_PASSWORD=yourls
    volumes:
      - ./mysql/db/:/var/lib/mysql
      - ./mysql/conf/:/etc/mysql/conf.d
    restart: always
    container_name: mysql
  
  yourls:
    image: yourls
    restart: always
    ports:
      - "8200:80"                      # 查看8200端口是否被占用,如果被占用,重新自定义一个端口
    environment:
      YOURLS_DB_HOST: mysql
      YOURLS_DB_USER: yourls
      YOURLS_DB_PASS: yourls
      YOURLS_DB_NAME: yourls
      YOURLS_USER: admin                # 用户名
      YOURLS_PASS: admin                # 登陆密码
      YOURLS_SITE: https://[domains]  # 换成自己的域名
      YOURLS_HOURS_OFFSET: 8
    volumes:
      - ./yourls_data/:/var/www/html   
    container_name: yourls_service
    links:
      - mysql:mysql
docker-compose up -d

  等待部署完成,部署完成并配置好反向代理、证书并且防火墙放行了 8200 端口后,打开https://你设置的域名/admin即可。默认是官方英文版的,如有汉化需要,则可以跟随以下内容汉化一下,不需要的话就可以开心使用啦!

https://你设置的域名/admin


  以下是一种防火墙、NPM 反向代理的配置,不一定要这样,自己配置好即可~

# 防火墙相关(如果已开)
ufw allow 8200
ufw reload

  如果你在本地部署了 Nginx Proxy Manager,可以不开防火墙的 8200 端口,选择转发主机的 IP 为你为 docker 设置的默认配置即可,一般为 172.17.0.1。

  如果你用的是其他服务器的 Nginx Proxy Manager,请如下配置反向代理及证书,转发主机写部署服务的公网 IP,需要开放防火墙的 8200 端口:
npm1
npm2

  如果你是手搓 Nginx 大佬,请忽略此部分内容!


3. 汉化流程

  汉化包下载链接放在了这里:这是链接,不过我们当然要用 wget 啦!需要下载并解压到docker-compose.yml所在文件夹的【./yourls_data/user/languages】目录。

# 下载并解压
cd ./yourls_data/user/languages
wget https://github.com/ZvonimirSun/YOURLS-zh_CN/archive/refs/tags/v1.7.3.zip
apt install zip -y
unzip v1.7.3.zip

# 修改文件拥有者和组
cd YOURLS-zh_CN-1.7.3
mv * ../ && cd ../
chown -R www-data:www-data zh_CN.mo
chown -R www-data:www-data zh_CN.po

  然后修改 yourls/yourls_data/user/config.php

vim ../../config.php

配置中文

  重启服务,使汉化配置生效:

cd ../../../../
docker-compose down
docker-compose up -d

4. 开心使用短链接服务

开心使用

  默认不支持使用大写字母作为自定义的短链接,如果想要使用大小写字母混合的模式,请到配置中文时的配置文件中修改,在最下方。更改配置后,请前往 docker-compose.yml 所在路径重启一次 docker 容器。

docker-compose down
docker-compose up -d

  其他配置请自行探索!也可以看看官方提供的插件有没有你需要的功能或者自定义其他主题等。

其他配置

  这是指向我的博客首页的短链接,看看有没有你想了解的内容吧!

5. 快速查看自己的某个短链接的数据统计情况

  在你的短链接后面加一个加号“+”即可直接到数据统计的界面,很方便滴!比如我的短链接是:https://urls.ezxxy.work/blog,则数据统计界面的链接为https://urls.ezxxy.work/blog+

祝使用开心,哈哈哈~

无标签
打赏
文章目录