Wallabagのメモ
#Tech
目次
はじめに
Wallabagとはオープンソースの後で読むを管理するサービスです。
PocketやInstapaperのようなサービスに近いものです。
Wallabagの利用はクラウドサービスがありますが無料ではありません。
そのため、今回はセルフホストで利用できるようにします。
Wallabag
WallabagのGitHubにソースコードとインストール方法が公開されています。
今回は、ホストに直接インストールするのではなくコンテナを利用するためこちらを参考にします。
Dockerが入っていない場合は、Dockerインストールを参照ください。
私は、nerdctl・Containerdを利用しています。
コンテナを起動するために下記のdocker-compose.ymlを作成します。
volumesにあるように、/opt/wallabag/images
と/opt/wallabag/data
をバインドしているので、予め作成します。
mkdir /opt/wallabag/images
mkdir /opt/wallabag/data
version: '3'
networks:
wallabag:
services:
wallabag:
image: wallabag/wallabag
environment:
- MYSQL_ROOT_PASSWORD=wallaroot
- SYMFONY__ENV__DATABASE_DRIVER=pdo_mysql
- SYMFONY__ENV__DATABASE_HOST=db
- SYMFONY__ENV__DATABASE_PORT=3306
- SYMFONY__ENV__DATABASE_NAME=wallabag
- SYMFONY__ENV__DATABASE_USER=wallabag
- SYMFONY__ENV__DATABASE_PASSWORD=wallapass
- SYMFONY__ENV__DATABASE_CHARSET=utf8mb4
- SYMFONY__ENV__DATABASE_TABLE_PREFIX="wallabag_"
# ↓アクセスする際のドメインに変更してください
- SYMFONY__ENV__DOMAIN_NAME=https://your-wallabag-url-instance.com
volumes:
- type: bind
source: /opt/wallabag/images
target: /var/www/wallabag/web/assets/images
ports:
- "8080:80"
networks:
- wallabag
restart: always
depends_on:
- db
- redis
db:
image: mariadb
environment:
- MYSQL_ROOT_PASSWORD=wallaroot
volumes:
- type: bind
source: /opt/wallabag/data
target: /var/lib/mysql
restart: always
networks:
- wallabag
redis:
image: redis:alpine
restart: always
networks:
- wallabag
wallabagコンテナの起動は下記のとおりです
nerdctl compose up
その後、SYMFONY__ENV__DOMAIN_NAME
に設定したドメインと開放しているポートを指定してアクセスすれば完了です。