Cirry's Blog

docker搭建wallabag网页

Nov 15, 2024
docker docker
5分钟
808字

前提

安装方式:

  • docker compose
  • 原生安装的postgres,可以在我的博客搜索安装方式

docker-compose

services:
wallabag:
image: wallabag/wallabag
environment:
- POSTGRES_PASSWORD=[postgres用户名]
- POSTGRES_USER=[postgres用户密码]
- SYMFONY__ENV__DATABASE_DRIVER=pdo_pgsql
- SYMFONY__ENV__DATABASE_HOST=[postgres服务器地址]
- SYMFONY__ENV__DATABASE_PORT=[postgres端口号]
- SYMFONY__ENV__DATABASE_NAME=wallabag # 提前在数据库中创建好
- SYMFONY__ENV__DATABASE_USER=[postgres用户名,跟上面的一样]
- SYMFONY__ENV__DATABASE_PASSWORD=[postgres用户密码,跟上面的一样]
- SYMFONY__ENV__DOMAIN_NAME=[postgres用户名] # 修改成反向代理的域名带上http/https
- SYMFONY__ENV__SERVER_NAME=Cirry's Wallabag #服务名称,自行修改一下
- UID=1000
13 collapsed lines
- GID=1000
ports:
- 19090:80 # 自行调整代理端口
volumes:
- /root/docker-compose/wallabag/images:/var/www/wallabag/web/assets/images
depends_on:
- redis
redis:
image: redis:alpine
healthcheck:
test: [ "CMD", "redis-cli", "ping" ]
interval: 20s
timeout: 3s

启动应用

docker compose up -d
# 启动成功后显示如下:
# root@VM-12-5-debian:~/docker-compose/wallabag# docker compose up -d
# [+] Running 2/2
# ✔ Container wallabag-redis-1 Started 0.4s
# ✔ Container wallabag-wallabag-1 Started
# 获取CONTAINER ID
docker ps -a
# root@VM-12-5-debian:~/docker-compose/wallabag# docker ps -a
# CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
# 8e4324eaf4e7 wallabag/wallabag "/entrypoint.sh wall…" 8 seconds ago Up 7 seconds 0.0.0.0:19090->80/tcp, :::19090->80/tcp wallabag-wallabag-1
# 查看应用日志
4 collapsed lines
docker logs 8e4324eaf4e7
# 启动成功,日志最后两行显示如下
# [OK] All assets were successfully installed.
# wallabag is ready!

登录问题

按照上面部署好之后,开开心心打开页面,会发现跳转到/login页面提示如下报错:

default

这时我们需要执行一下下面的命令:

docker exec -it [CONTAINER ID] /var/www/wallabag/bin/console wallabag:install -e prod

我已经特别标注出来需要修改的地方了,“注意”,没有填的地方默认直接回车就好。

docker exec -it 24bd89ca62d2 /var/www/wallabag/bin/console wallabag:install -e prod
# root@VM-12-5-debian:~/docker-compose/wallabag# docker exec -it 24bd89ca62d2 /var/www/wallabag/bin/console wallabag:install -e prod
# wallabag installer
# ==================
# Step 1 of 4: Checking system requirements.
# ------------------------------------------
# ------------------------ -------- ----------------
# Checked Status Recommendation
# ------------------------ -------- ----------------
# PDO Driver (pdo_pgsql) OK!
# Database connection OK!
# Database version OK!
# curl_exec OK!
# curl_multi_init OK!
27 collapsed lines
# ------------------------ -------- ----------------
# [OK] Success! Your system can run wallabag properly.
# Step 2 of 4: Setting up database.
# ---------------------------------
# It appears that your database already exists. Would you like to reset it? (yes/no) [no]:
> no #注意
# Creating schema...
# Clearing the cache...
# Database successfully setup.
# Step 3 of 4: Administration setup.
# ----------------------------------
# Would you like to create a new admin user (recommended)? (yes/no) [yes]:
> yes #注意
# Username [wallabag]:
> #回车
# Password [wallabag]:
> #回车
# Email [wallabag@wallabag.io]:
> #回车
# Administration successfully setup.
# Step 4 of 4: Config setup.
# --------------------------
# Config successfully setup.
# [OK] wallabag has been successfully installed.
# [OK] You can now configure your web server, see https://doc.wallabag.org

如上图这样修改完成之后,就可以使用账户:wallabag,密码wallabag进行登录。

图片存储权限问题

在浏览器插件中下载wallabag并配置好之后,直接点击插件图标保存,错误提示如下:

default

这里是因为图片目录没有权限导致的问题,需要输入如下命令:

sudo chown -R 65534:65534 /root/docker-compose/wallabag/images

命令执行之后,还是无法保存带图片的网页的话,就停掉容器,重新部署一下。

数据库问题

如果按照上面的操作没有解决,那就需要执行这个命令了。

不过这个命令要在上面那个命令之前执行,所以你需要去删除掉两个docker容器和数据库wallabag重新创建,然后再重新部署容器。

docker exec -it [CONTAINER ID,自行替换一下] /var/www/wallabag/bin/console doctrine:migrations:migrate --no-interaction --env=prod

配置订阅源

强烈建议搭配rss订阅使用,设置->订阅源->生成订阅源令牌->订阅所有

本文标题:docker搭建wallabag网页
文章作者:Cirry
发布时间:Nov 15, 2024
感谢大佬送来的咖啡☕
alipayQRCode
wechatQRCode
总访问量
总访客数人次