Skip to content

Webapp docker image #12563

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 10 commits into
base: dev
Choose a base branch
from
Open

Webapp docker image #12563

wants to merge 10 commits into from

Conversation

Robin-Sch
Copy link

@Robin-Sch Robin-Sch commented Jun 18, 2025

This PR introduces a Docker image to run the webapp (https://app.joplincloud.com/).

Personally, I like to self-host all the services I use, including joplin (server). However, if I want to self-host joplin webapp right now I need to manually build it and copy over the static files, after which I need to configure my reverse proxy to host those static files.

(Or use something like https://github.com/Lanjelin/Joplin-docker, which runs the desktop app inside of Docker using kasmvnc, but it's not 100% user friendly like the native method is)

This does not integrate well into my homelab setup, so therefore I created a Docker image (for myself) to run the webapp. As some other users might also want to do this, here you go!

Copy link
Contributor

github-actions bot commented Jun 18, 2025

CLA Assistant Lite bot All contributors have signed the CLA ✍️ ✅

@Robin-Sch
Copy link
Author

I have read the CLA Document and I hereby sign the CLA

github-actions bot added a commit that referenced this pull request Jun 18, 2025
@Robin-Sch Robin-Sch mentioned this pull request Jun 18, 2025
31 tasks
@compgeniuses
Copy link

Thank you for this.

@Robin-Sch
Copy link
Author

I used

COPY --from=builder /build/packages/app-mobile/webapp-nginx.conf /etc/nginx/conf.d/default.conf

instead of

COPY packages/app-mobile/webapp-nginx.conf /etc/nginx/conf.d/default.conf

in case people want to run git clone https://github.com/laurent22/joplin --depth=1 in their Dockerfile (which allows for stand-alone builds without needing to download the entire repo and history)

The large block of COPY commands (line 19-39) should in that case be replaced by this

RUN git clone https://github.com/laurent22/joplin --depth=1 .
# Remove unused actions
RUN mv packages packages_unused
RUN mkdir packages && \
    for dir in app-mobile editor fork-htmlparser2 fork-uslug fork-sax htmlpack \
               lib react-native-alarm-notification react-native-saf-x renderer \
               tools turndown turndown-plugin-gfm utils; do \
        mv packages_unused/"$dir" packages/; \
    done

@personalizedrefrigerator
Copy link
Collaborator

personalizedrefrigerator commented Jun 19, 2025

Thank you for contributing!

For reference, I'm linking to joplin/web-app#2, a pull request on the GitHub pages deployment repository for the web app. I suspect (but am not certain) that this pull request or one with a similar approach is more likely to be merged than joplin/web-app#2, since its changes are applied to the main repository (where the existing Docker deployment logic is).

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants