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 deploy #550

Merged
merged 136 commits into from
Sep 12, 2020
Merged

Docker deploy #550

merged 136 commits into from
Sep 12, 2020

Conversation

jmgrady
Copy link
Collaborator

@jmgrady jmgrady commented Jul 27, 2020

Create scripts to deploy TheCombine as a set of Docker Containers

Closes #344, #378, #427, #437

This PR implements the Ansible playbooks to deploy TheCombine to QA & Production machines with TheCombine running inside docker containers. ./docs/docker_deploy/README.md contains the instructions for using the playbooks as well as a description of their design.

Caveat: These playbooks only work for the QA server or the live server; NUCs are not supported yet.


This change is Reviewable

frontend_entrypoint --> frontend_start_script
Remove .env.backend.auth from the environment files for docker compose.  
Normally it is not used.  For production, a separate docker-compose 
override file will be created to set the admin password parameters.  For 
development, there are npm scripts to make an existing user an admin.
Add a series of bash shell aliases to easily build/start/stop the 
combine in a production environment and minimize typos with the list of 
docker-compose YAML files.
@johnthagen
Copy link
Collaborator


docker_deploy/roles/combine_config/templates/docker-compose.yml.j2, line 20 at r11 (raw file):

Previously, johnthagen wrote…

Resolved in 8443cc1

Done

Copy link
Collaborator

@johnthagen johnthagen left a comment

Choose a reason for hiding this comment

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

Reviewed 3 of 3 files at r4, 2 of 2 files at r5, 1 of 39 files at r6, 2 of 8 files at r12.
Reviewable status: 17 of 39 files reviewed, 1 unresolved discussion (waiting on @jmgrady and @johnthagen)

@jmgrady jmgrady marked this pull request as ready for review September 11, 2020 18:39
@johnthagen
Copy link
Collaborator


docker_deploy/roles/package_install/defaults/main.yml, line 5 at r13 (raw file):

required_packages:
  - python3
  - python3-pip

What is pip used for in the deployment environment? Are there extra PyPI packages that are needed outside of what comes with Ansible?

@johnthagen
Copy link
Collaborator


docker_deploy/vars/config_common.yml, line 11 at r13 (raw file):

frontend_env_dir: "{{ source_dir }}"

production_override_yaml: docker-compose.prod.yml

Now that we are templating out the docker-compose.yml file. Can we remove this .prod override?

Copy link
Collaborator

@johnthagen johnthagen left a comment

Choose a reason for hiding this comment

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

Reviewed 14 of 39 files at r6, 1 of 1 files at r8, 4 of 8 files at r12, 3 of 3 files at r13, 3 of 3 files at r14.
Reviewable status: all files reviewed, 2 unresolved discussions (waiting on @jmgrady)

johnthagen and others added 3 commits September 11, 2020 15:42
python3 is installed by default on Ubuntu 18.04; python3-pip is not 
needed for the docker installation.
"production_override_yaml" definition is no longer needed.
Copy link
Collaborator Author

@jmgrady jmgrady left a comment

Choose a reason for hiding this comment

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

Reviewable status: 36 of 39 files reviewed, 1 unresolved discussion (waiting on @johnthagen)


docker_deploy/vars/config_common.yml, line 11 at r13 (raw file):

Previously, johnthagen wrote…

Now that we are templating out the docker-compose.yml file. Can we remove this .prod override?

Done.

Copy link
Collaborator

@johnthagen johnthagen left a comment

Choose a reason for hiding this comment

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

Reviewed 1 of 1 files at r15, 2 of 2 files at r16.
Reviewable status: :shipit: complete! all files reviewed, all discussions resolved

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Create initial database admin on target systems
2 participants