Skip to content

Conversation

@AD-Archer
Copy link

Add Docker support to the project, including a Dockerfile, docker-compose configuration, and updated installation instructions in the README. This enhances deployment options and simplifies the setup process for users.

"start-server-win": "npm --workspace client run build && SET NODE_ENV=production && node server/index.js",
"update": "git pull && npm install && npm run start-server"
"docker:run": "docker-compose up -d",
"update": "git pull && npm install",
Copy link
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Why was npm run start-server removed from the update script?

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I attempted to make npm run update script universal for docker, and a base install.

Copy link
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

So is the recommendation that "manual installs" run npm run update:manual and docker installs run npm run update:docker? I don't see how npm run update would work for both installs (unless I don't understand something about how scripts work)

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yes, the ideal flow would go like this
Manual user: npm run update:manual
Docker user: npm run update:docker

This would've allowed each user update and start the application the way they would like. Typically the docker image for an app would exist in a place like dockerhub and that would allowed for docker users to not need to use node scripts. but since this is the first iteration of docker, I thought it would be okay for now.

ps. Sorry I should have included this in my pull from the beginning.

Copy link
Owner

@derekantrican derekantrican Aug 30, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Understandable. I'm quite new to docker, so I'm not very familiar. But I know it's a big request for people interested in this app.

Let's keep update:docker as you have it (or change it to docker:update since the other docker scripts have that naming convention), but let's remove update:manual and just go back to the regular update script the way it was.

README.md Outdated
npm run docker:run # Start (build if needed) in background
npm run docker:logs # Follow logs
npm run docker:stop # Stop and remove container
npm run docker:update # git pull then rebuild using latest base images and recreate
Copy link
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Should this be npm run update:docker (according to package.json scripts)

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

yes, it should.

README.md Outdated

```
cd subarr
npm run docker:update
Copy link
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This one as well

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

oops, of course, I've amended the change

@dnlrsr
Copy link

dnlrsr commented Sep 5, 2025

I have refactored the server part and also provide a docker image for usage. Some bugs are fixed and security issues closed.

Take a look https://github.com/dnlrsr/subarr

@derekantrican if you are up for the stuff, contact me on discord. Username: dnlrsr

@crypt0rr
Copy link

crypt0rr commented Sep 5, 2025

Following along with this PR, so we can get it as a service in the ScaleTail repo. So people can easily host it within their private Tailscale Tailnet network.

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.

4 participants