FreshRSS has been working great for me! It even has the ability for web scraping if you need it.
FreshRSS has been working great for me! It even has the ability for web scraping if you need it.
Also, I’d like to point out that Overleaf’s hosting and pricing options are quite reasonable, especially if you’re working for a university or institution: https://www.overleaf.com/user/subscription/plans
While I did take advantage of the free Overleaf Pro during my university days, I don’t have it anymore after graduating, and so I’m missing some features which their free tier doesn’t have.
By self-hosting I’m given better control, and all those features I once had before.
Also, the whole point of this community is to kind of avoid relying on third-party hosting, and especially paying for it too🙂
I checked the volumes that I included in the compose file, and looked for either a texlive
, tlmgr
or a package
folder and didn’t find anything. I think it’s safe to assume that you would need to reinstall the packages if you recreated the containers.
This is a problem that I didn’t consider. I will try to make an update to my compose file that will keep the packages persistent.
Check above for the update!
There’s some tinkering with their docker-compose.yml
to make it work. Here’s mine you can copy if you want to get it up and running. I don’t use nginx or any reverse-proxy btw. All data is saved in their own individual volumes which you can back up:
services:
sharelatex:
restart: always
image: sharelatex/sharelatex
depends_on:
mongo:
condition: service_healthy
redis:
condition: service_started
ports:
- *DESIRED_PORT*:80
links:
- mongo
- redis
stop_grace_period: 60s
volumes:
- data:/var/lib/sharelatex
- texlive:/usr/local/texlive
environment:
SHARELATEX_APP_NAME: Overleaf Community Edition
SHARELATEX_MONGO_URL: mongodb://mongo/sharelatex
SHARELATEX_REDIS_HOST: redis
REDIS_HOST: redis
ENABLED_LINKED_FILE_TYPES: 'project_file,project_output_file'
ENABLE_CONVERSIONS: 'true'
EMAIL_CONFIRMATION_DISABLED: 'true'
mongo:
command: "--replSet overleaf"
restart: always
image: mongo:4.4
expose:
- 27017
volumes:
- mongo_data:/data/db
healthcheck:
test: echo 'db.stats().ok' | mongo localhost:27017/test --quiet
interval: 10s
timeout: 10s
retries: 5
redis:
restart: always
image: redis:6.2
expose:
- 6379
volumes:
- redis_data:/data
volumes:
data:
mongo_data:
redis_data:
texlive:
Some of my documents rely on certain packages which didn’t come with the Docker image. You will need to run
docker exec sharelatex-sharelatex-1 tlmgr update --self;docker exec sharelatex-sharelatex-1 tlmgr install scheme-full
so that you can render your documents properly if they utilize certain packages.
Optionally—since the full scheme takes about 8 GB and you may not need everything—you can replace scheme-full
with a different scheme you can find by running
docker exec sharelatex-sharelatex-1 tlmgr info schemes
The i
before any scheme name means that it is already installed.
Update:
Included a texlive
volume to save any packages that were installed, so when recreating the containers, they will persist.
I use WireGuard to access my home services and for net-forwarding when I’m outside.
To set it up, I followed this simple guide.