Skip to content
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

Docker image #1

Open
Ailothaen opened this issue May 1, 2023 · 1 comment
Open

Docker image #1

Ailothaen opened this issue May 1, 2023 · 1 comment
Assignees
Labels
help wanted Extra attention is needed

Comments

@Ailothaen
Copy link
Owner

Some people wanted to be able to run the RedditArchiver app in a Docker container.

Despite I took some Docker classes some time ago, I do not have a lot of experience with it, and there are some aspects of RedditArchiver that makes making a Dockerfile complicated for me (or more exactly: makes me doubtful about whether the way I do is the correct one)

In particular, there are two aspects of RedditArchiver that I do not really know how to handle:

  • RedditArchiver has a optional feature to block requests coming from non-listed IPs. How to ensure the requesting IP is passed correctly to the container? (Might be difficult in complex orchestrator setups)
  • How to handle persistent/variable data (logs, config files, output HTML files...)? What should be used? (Volumes, mappings... ?)

Here is the uncomplete Dockerfile I came up with, as now:

FROM python

WORKDIR /opt/redditarchiver
ENV RA_DOCKER=1
COPY src .

RUN pip install -r requirements.txt

EXPOSE 80:80
CMD ["gunicorn", "wsgi:app", "-b", "0.0.0.0:80", "-w", "1"]

Any help or suggestions are welcome.

@Ailothaen Ailothaen added the help wanted Extra attention is needed label May 1, 2023
@Ailothaen Ailothaen self-assigned this May 1, 2023
@dan1elt0m
Copy link

dan1elt0m commented Sep 15, 2024

Hey @Ailothaen, see PR #3

Regarding your concern about the allowed-ips. The ip to add is the docker internal local host ip. During docker build this docker ip is automatically added to the config.yml. The docker localhost ip is configurable in the compose.yml. I have set it to 192.168.65.0/24, which is the default ip.

Regarding persistent data concern: I added two volumes to persist logs and output data. Let me know if there is something else you would like to persist.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
help wanted Extra attention is needed
Projects
None yet
Development

No branches or pull requests

2 participants