Wxf`s Fantasy World

share something useful


Shaarli服务

前置准备

vps服务器一台、shaarli插件
参考freshrss服务搭建

部署

docker-compose.yml

version: '3'

services:
  shaarli:
    image: shaarli/shaarli:latest
    container_name: shaarli
    restart: unless-stopped
    ports:
      - 8005:80
    volumes:
      - /home/ubuntu/serv/shaarli/cache:/var/www/shaarli/cache
      - /home/ubuntu/serv/shaarli/data:/var/www/shaarli/data
$ sudo docker-compose up -d

执行上一条指令,即可开启服务,volumes选项。
宿主机的cache和data文件的所属用户和用户组可能跟容器内部的所属用户、用户组不一样,这时候要切到容器内部。\

$ sudo docker exec -it ID bash
$ cd shaarli
$ chown -R nginx:nginx data
$ chown -R nginx:nginx cache

最终效果

数据迁移

$ alias sync_ucloud="rsync -avz -e ssh ubuntu@ip:~/serv/shaarli/* '/d/g/area/serv'"

用这条指令同步所有数据,然后执行

$ sudo docker-compose up -d

即可迁移和一键恢复(注意docker-compose.yml中-volumes选型的宿主机目录,要更改为当前宿主机目录)。