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

Create Docker documentation for Incubator #77

Open
4 of 22 tasks
JasonEb opened this issue Aug 17, 2022 · 11 comments
Open
4 of 22 tasks

Create Docker documentation for Incubator #77

JasonEb opened this issue Aug 17, 2022 · 11 comments
Labels
Complexity: Missing CoP: Ops feature : guide creation Phase: 1 - Gather Examples Solo size: 3pt Can be done in 13-18 hours status: 1.1 needs wiki examples Gathering examples by checking each team's wiki status: 1.2 needs issues examples Gathering examples by checking each team's issues status: 1.3 needs project board examples Gathering examples by checking each team's project board cards status: 1.4 needs slack examples Check each team's slack channel for examples

Comments

@JasonEb
Copy link

JasonEb commented Aug 17, 2022

Overview

We need a guide to building a docker image to deploy software onto Incubator, so that when projects are ready to deploy they know how to make their own docker image.

Details

With the Incubator, software and projects are deployed via Docker images. With VRMS, CivicTechJobs, HomeUniteUs, we have a common Django infrastructure and successful docker builds working with Incubator.

Action Items

The phases in the guide-making process are listed below. Each phase displayed in blue is linked to a wiki page with instructions on how to complete that phase. Open the wiki page in a new tab, copy the instructions for each part into the section labeled 'Tasks' at the bottom of this issue, and complete each task listed.

Resources/Instructions

  • Collect links to Docker files + Docker-compose files for Incubator apps
  • Investigate Docker do's and don'ts for docker and docker-compose files
  • Create Documentation for best practices on docker and docker-compose files

Related Issues

tech leads for their respective projects and have deployed on incubator

Who is involved

  • Incubator
    • Incubator is managed by the DevOps community of practice
      • @sudhara has a list of all project's status on incubator
  • Project's deployed on Incubator and their tech leads

What to ask for

Projects to Check

Tasks

  • This is where you will copy instructions from the wiki page for the step you are currently on.
@joshuayhwu
Copy link

joshuayhwu commented Aug 25, 2022

@JasonEb [Work in Progress]

Links to Docker-Compose FIles

Docker Best Practices

  • Use Docker Multi-stage (1 stage for build, 1 stage for static serve)
  • Minimize image size (with debian / alpine)
  • Do not include environment file into Dockerfile
  • Specify context when using Docker

Docker-Compose Best Practices

  • List versions
  • List the services provided, the context, ports
  • List the client, the context, dockerfile, ports
  • List nginx, dockerfiles, ports
  • List the volumes

@nyarly
Copy link
Member

nyarly commented Oct 6, 2022

Can I suggest that Hack4LA have a set of approved base images, and a policy for updating that list?

I'd also suggest that Incubator have an explicit contract about Docker and compose files, rather than merely a list of "best practices." Consider the value to Ops of each requirement you make and be able to explain it. e.g. "Base images must be from the approved list, because there's limited bandwidth for us to investigate upstream problems."

@ethanstrominger ethanstrominger self-assigned this Nov 18, 2022
@ethanstrominger

This comment was marked as off-topic.

@chelseybeck

This comment was marked as outdated.

@chelseybeck
Copy link
Member

@ethanstrominger do you think that the following issue is a subset of this issue and can be closed? or do we need to stick it in the ice box for when you are finished with this issue?

@ExperimentsInHonesty

This comment was marked as outdated.

@ethanstrominger ethanstrominger removed their assignment Aug 28, 2024
@ethanstrominger

This comment was marked as outdated.

@Aditya23soni

This comment was marked as outdated.

@Aditya23soni
Copy link
Member

Assignee, Labels, Project Board Placement, and Milestones for this issue in the Ops Repo:

Screenshot 2024-10-04 at 7 26 25 PM

@Aditya23soni
Copy link
Member

@JasonEb This guide issue is moving to the knowledgebase-content repo. If you would like to maintain edit access to the issue and its associated files, please fill out the Google Drive Access Form.

@ExperimentsInHonesty
Copy link
Member

@chelseybeck This issue is about creating a docker images and does not refer to GitHub actions. The issue hackforla/ops#32 seems to reference both. If you think a docker image created by a GHA is the way to go, I can move anything relevant from 32 to this issue.

@ExperimentsInHonesty ExperimentsInHonesty added Phase: 1 - Gather Examples Solo status: 1.1 needs wiki examples Gathering examples by checking each team's wiki status: 1.3 needs project board examples Gathering examples by checking each team's project board cards status: 1.2 needs issues examples Gathering examples by checking each team's issues status: 1.4 needs slack examples Check each team's slack channel for examples and removed Phase: 4 - CoP Peer Review status: 4.1 needs peer review lvl 1 labels Dec 9, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Complexity: Missing CoP: Ops feature : guide creation Phase: 1 - Gather Examples Solo size: 3pt Can be done in 13-18 hours status: 1.1 needs wiki examples Gathering examples by checking each team's wiki status: 1.2 needs issues examples Gathering examples by checking each team's issues status: 1.3 needs project board examples Gathering examples by checking each team's project board cards status: 1.4 needs slack examples Check each team's slack channel for examples
Projects
Status: Needs to be Triaged
Status: Needs to be Triaged
Development

No branches or pull requests

7 participants