侧边栏壁纸
博主头像
二十五画生 博主等级

浮名本是身外物,不著方寸也风流

  • 累计撰写 10 篇文章
  • 累计创建 20 个标签
  • 累计收到 1 条评论

目 录CONTENT

文章目录

10分钟搭建一个自己的短链接服务——YOURLS

咕咕
2024-08-27 / 0 评论 / 0 点赞 / 83 阅读 / 0 字
温馨提示:
本文最后更新于2024-08-29,若内容或图片失效,请留言反馈。 部分素材来自网络,若不小心影响到您的利益,请联系我们删除。

介绍

项目展示

搭建环境

  • 服务器:甲骨文VPS
  • 系统:Ubuntu22.04
  • 域名一枚,并做好解析到服务器上
  • 安装好Docker、Dcoekr-compose(相关链接)
  • 【非必需】提前安装好宝塔面板海外版本aapanel,并安装好Nginx
  • 【非必需本教程采用】安装好Nginx Proxy Manager (相关教程)

搭建

sudo -i # 切换到root用户

apt update -y  # 升级packages

apt install wget curl sudo vim git  # Debian系统比较干净,安装常用的软件

创建一下安装的目录:

mkdir -p /root/data/docker_data/yourls

cd /root/data/docker_data/yourls

nano docker-compose.yml

docker-compose.yml中的镜像来源官方仓库,内容如下:

version: "3.5"
services:

  mysql:
    image: mysql:8.0  # 指定MySQL版本
    environment:
      - MYSQL_ROOT_PASSWORD=password# 在这里设置新的安全密码
      - MYSQL_DATABASE=yourls
      - MYSQL_USER=yourls
      - MYSQL_PASSWORD=yourls
    volumes:
      - /root/data/docker_data/yourls/mysql/db/:/var/lib/mysql
      - /root/data/docker_data/yourls/mysql/conf/:/etc/mysql/conf.d
    restart: always
    container_name: mysql

  yourls:
    image: yourls
    restart: always
    ports:
      - "8200:80"
    environment:
      YOURLS_DB_HOST: mysql
      YOURLS_DB_USER: yourls
      YOURLS_DB_PASS: yourls
      YOURLS_DB_NAME: yourls
      YOURLS_USER: admin               # 替换成你自己的用户名
      YOURLS_PASS: password   # 替换成你自己的密码
      YOURLS_SITE: https://c33.xyz     # 替换成你自己的域名
      YOURLS_HOURS_OFFSET: 8
    volumes:
      - /root/data/docker_data/yourls/:/var/www/html
    container_name: yourls_service
    depends_on:
      - mysql

networks:
  default:
    driver: bridge

注意:如果VPS的内存比较小 ,推荐设置一下SWAP,一般为内存的1-1.5倍即可~

设置SWAP可以用脚本:

wget -O box.sh https://raw.githubusercontent.com/BlueSkyXN/SKY-BOX/main/box.sh && chmod +x box.sh && clear && ./box.sh

没问题的话,ctrl+x退出,按y保存,enter确认。
查看端口是否被占用,输入:

lsof -i:8200  #查看8200端口是否被占用,如果被占用,重新自定义一个端口

如果出现:

-bash: lsof: command not found

运行:

apt install lsof  #安装lsof

如果端口没有被占用,可以运行:

docker-compose up -d 

访问:http:服务ip:8200 即可。

注意:
1、不知道服务器IP,可以直接在命令行输入:curl ip.sb,会显示当前服务器的IP。
2、遇到访问不了的情况,请在宝塔面板的防火墙和服务商的后台防火墙里打开对应端口。

更新

cd /root/data/docker_data/yourls  # 进入docker-compose所在的文件夹
docker-compose pull    # 拉取最新的镜像
docker-compose up -d   # 重新更新当前镜像

利用Docker-compose搭建的应用,更新非常容易~

卸载

sudo -i  # 切换到root
cd /root/data/docker_data/yourls  # 进入docker-compose所在的文件夹
docker-compose down    # 停止容器,此时不会删除映射到本地的数据
cd ~
rm -rf /root/data/docker_data/yourls  # 完全删除映射到本地的数据

利用Docker-compose搭建的应用,删除也非常容易~

反向代理(必须)

利用Nginx Proxy Manager

在添加反向代理之前,确保你已经完成了域名解析,之后,登陆Nginx Proxy Manager(不会的看这个:安装Nginx Proxy Manager相关教程

注意:

Nginx Proxy Manager(以下简称NPM)会用到80443端口,所以本机不能占用(比如原来就有Nginx)
直接丢几张图:

image-20240827195926252

image-20240827200040267

注意填写对应的域名IP端口,按文章来的话,应该是8200

然后就可以用域名+/admin(即https://你的域名/admin)来安装访问了。

下载中文语言包

下载地址:https://github.com/ZvonimirSun/YOURLS-zh_CN/archive/refs/tags/v1.7.3.zip

wget https://github.com/ZvonimirSun/YOURLS-zh_CN/archive/refs/tags/v1.7.3.zip
apt install zip -y
unzip v1.7.3.zip

需要下载并解压到/root/data/docker_data/yourls/user/languages目录

chown -R www-data:www-data zh_CN.mo  # 修改文件拥有者和组
chown -R www-data:www-data zh_CN.po  # 修改文件拥有者和组

然后修改/root/data/docker_data/yourls/user/config.php

激活插件


同一条链接对应多个短链接
记得重启容器:

cd /root/data/docker_data/yourls

docker-compose restart

实测成功!

0
  1. 支付宝打赏

    qrcode alipay
  2. 微信打赏

    qrcode weixin
  3. QQ打赏

    qrcode qq

评论区