Automatic Build and Upload of Private Dockers
Guide to build and upload on Docker hub from private Github repositories
Last updated
Guide to build and upload on Docker hub from private Github repositories
Last updated
Create a private repository on Docker Hub for all dockers that will be uploaded.
Make sure a 'bot' user is created on Docker Hub that has read/write access to these repositories
Create an access token for this user. (Refer Docker Hub docs)
Clone the private repo on the command line (example, openg2p-myrepo
)
Under openg2p-myrepo/.github
folder create the following folder structure
Inside docker_packages
folder create package files for modules like Social Registry, PBMS, etc. See . Replace openg2p-myrepo
with your private repo name.
Run following command in your private repo root folder openg2p-myrepo/:
This will clone openg2p-packaging
repo into the docker_packaging
folder. The folder structure will look like
Set SERVICE_NAME
to name of your Docker Hub repository
Replace openg2p-myrepo
with your repo name
Check in all the above.
Under Secrets and variables->Actions create the following secrets:
DOCKER_HUB_ACTOR: Docker Hub user id that has permission to read/write the above registry
DOCKER_HUB_ORGANIZATION: Organization under which your private repo resides
DOCKER_HUB_TOKEN: Access token for this user on Docker Hub
Under your private repo Settings->Actions->General, enable "Allow all actions and reusable workflows"
The above workflow will automatically run when a PR is merged into the private repo. Dockers will be built and posted to Docker Hub.
Inside workflows
folder copy and modify the following for your repo: