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

update dockerfile to get fonts from GDrive instead #505

Closed
wants to merge 6 commits into from

Conversation

nickv2002
Copy link
Collaborator

@nickv2002 nickv2002 commented Feb 26, 2024

This improves the dockerfile that was trying to be too clever about fonts. Instead it just downloads them from a zip file on Google Drive.


The features below were moved to another PR:

This also adds an initial workflow to build docker image and upload to GitHub Container registry

Some GPT generated suggestions for setting it up (I don't think I have access to create the tokens)

Log in to GitHub Container Registry: Using the docker/login-action, we log into GHCR using the credentials stored in GHCR_USERNAME and GHCR_TOKEN. This step is critical for allowing subsequent docker push commands to authenticate against the GitHub Container Registry.

Build and push Docker image: We build the Docker image using the docker build command. The tag (-t) for the Docker image is set to include the GitHub Container Registry URL (ghcr.io), the repository name (${{ github.repository }}), a specific name for your application (change myapplication as necessary), and the commit SHA (${{ github.sha }}) for uniqueness. Afterwards, the docker push command uploads the built image to GHCR.

Make sure to:

Replace myapplication with the desired name for your Docker image.
Adjust any Docker build arguments or context as necessary for your specific Dockerfile.
This integration adds a robust CI/CD pipeline step for containerization alongside your existing Python package deployment, streamlining both code and container distribution with each release.

@nickv2002
Copy link
Collaborator Author

@sumpfork this is waiting on your review since I made a change to GitHub workflows. If I should take that out and just update the dockerfile LMK.

FROM --platform=linux/arm64 pacodrokad/fonts:latest AS fonts-image
FROM alpine AS fonts-download
# get the fonts from Google Drive
RUN wget "https://drive.usercontent.google.com/download?id=1_BmJ1afnSt1rR_YAWhUCFDch8Bat78ti&export=download&authuser=0" -O fonts.zip
Copy link
Owner

Choose a reason for hiding this comment

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

This is a personal google drive? I really don't like depending on that.

Copy link
Collaborator Author

@nickv2002 nickv2002 Mar 10, 2024

Choose a reason for hiding this comment

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

I understand where you're coming from. The normal solution would be to add them to this repository but we've talked about that before.

I'm trying to make it easier to run the CLI tools: "use the docker image" usually works well for many other open-source projects I use daily, so I want to build the fonts into the image. Is there some other place we could link these to enable Docker to grab them when it's building?

Copy link
Collaborator Author

Choose a reason for hiding this comment

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

I've resolved the other items but would appreciate your thoughts here on how we can make the dockerfile easy to use.

Copy link
Owner

Choose a reason for hiding this comment

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

I just don't think we can distribute them legally, so we shouldn't try.

I was cleaning requiements stuff up #507 anyway so cleaned up the dockerfile in a similar manner to this PR over there. Also added an example as to how to map the local dir into the container so you can use local fonts and actually get the pdf back out easily.

@sumpfork
Copy link
Owner

@sumpfork this is waiting on your review since I made a change to GitHub workflows. If I should take that out and just update the dockerfile LMK.

Yeah, let's take that out and try it in a separate PR.

dockerfile Outdated Show resolved Hide resolved
dockerfile Outdated Show resolved Hide resolved
@nickv2002
Copy link
Collaborator Author

This was handled in #507

@nickv2002 nickv2002 closed this Mar 26, 2024
@sumpfork sumpfork deleted the docker-font-updates branch May 4, 2024 21:05
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.

2 participants