From 0ab3da30cf6ea36b28b647c57c0b516c00117cc1 Mon Sep 17 00:00:00 2001 From: Fanna Lautenbach <lautenbach@astron.nl> Date: Wed, 5 Oct 2022 14:57:30 +0200 Subject: [PATCH] update readme and add templates --- Dockerfile | 9 ++++ README.md | 115 ++++++++++------------------------------- docker-compose.yml | 17 ++++++ gitlab.vars.png | Bin 0 -> 62387 bytes template.gitlab-ci.yml | 55 ++++++++++++++++++++ 5 files changed, 108 insertions(+), 88 deletions(-) create mode 100644 Dockerfile create mode 100644 docker-compose.yml create mode 100644 gitlab.vars.png create mode 100644 template.gitlab-ci.yml diff --git a/Dockerfile b/Dockerfile new file mode 100644 index 0000000..c3e93de --- /dev/null +++ b/Dockerfile @@ -0,0 +1,9 @@ +FROM python:3.10-slim + +RUN apt-get update && apt-get install --no-install-recommends -y bash nano mc + +RUN mkdir /src +WORKDIR /src +COPY . /src/ +RUN pip install -r requirements.txt +ENTRYPOINT ["python","main.py"] \ No newline at end of file diff --git a/README.md b/README.md index e87ccb8..3fec5bd 100644 --- a/README.md +++ b/README.md @@ -1,92 +1,31 @@ -# docker-deploy - +# Template: docker build and deploy +This a gitlab CI/CD template for building a docker image and deploying a docker stack to a certain machine via environment variables within gitlab. ## Getting started +### Within your project +In your own project make sure the following files are present in the root of your project + +1. Dockerfile + 1. Docker file that has all the necessary information to run your code + 2. **Example Dockerfile** for a standard python project with a ```main.py``` and some libraries in a ```requirements.txt``` added as a template here +2. docker-compose.yaml + 1. docker-compose file with at least your own service and a network and the location of the environment file + 2. **Example docker-compose** for a single service added as a template here +3. gitlab-ci.yml + 1. the gitlab-ci.yml template that is in this project + 2. :exclamation: change the name within this template to your own service name and remove template from the name (template.gitlab-ci.yml -> .gitlab-ci.yml)) + +### On gitlab +To make sure variables and the build+deploy job are not dependent, add the following variables to gitlab + +1. Go to the CI/CD variables section (for example: https://git.astron.nl/templates/docker-deploy/-/settings/ci_cd -> variables) +2. Expand the section and add the following variables **as a variable**: + 1. DEPLOY_HOST + 1. Where the docker service(s) should run. + 2. SERVICE_DIR + 1. Where the static files are stored like the docker-compose.yaml. +3. Expand the section and add the variables that are used by your docker service **as a file** called DOT_ENV + + -To make it easy for you to get started with GitLab, here's a list of recommended next steps. - -Already a pro? Just edit this README.md and make it your own. Want to make it easy? [Use the template at the bottom](#editing-this-readme)! - -## Add your files - -- [ ] [Create](https://docs.gitlab.com/ee/user/project/repository/web_editor.html#create-a-file) or [upload](https://docs.gitlab.com/ee/user/project/repository/web_editor.html#upload-a-file) files -- [ ] [Add files using the command line](https://docs.gitlab.com/ee/gitlab-basics/add-file.html#add-a-file-using-the-command-line) or push an existing Git repository with the following command: - -``` -cd existing_repo -git remote add origin https://git.astron.nl/templates/docker-deploy.git -git branch -M main -git push -uf origin main -``` - -## Integrate with your tools - -- [ ] [Set up project integrations](https://git.astron.nl/templates/docker-deploy/-/settings/integrations) - -## Collaborate with your team - -- [ ] [Invite team members and collaborators](https://docs.gitlab.com/ee/user/project/members/) -- [ ] [Create a new merge request](https://docs.gitlab.com/ee/user/project/merge_requests/creating_merge_requests.html) -- [ ] [Automatically close issues from merge requests](https://docs.gitlab.com/ee/user/project/issues/managing_issues.html#closing-issues-automatically) -- [ ] [Enable merge request approvals](https://docs.gitlab.com/ee/user/project/merge_requests/approvals/) -- [ ] [Automatically merge when pipeline succeeds](https://docs.gitlab.com/ee/user/project/merge_requests/merge_when_pipeline_succeeds.html) - -## Test and Deploy - -Use the built-in continuous integration in GitLab. - -- [ ] [Get started with GitLab CI/CD](https://docs.gitlab.com/ee/ci/quick_start/index.html) -- [ ] [Analyze your code for known vulnerabilities with Static Application Security Testing(SAST)](https://docs.gitlab.com/ee/user/application_security/sast/) -- [ ] [Deploy to Kubernetes, Amazon EC2, or Amazon ECS using Auto Deploy](https://docs.gitlab.com/ee/topics/autodevops/requirements.html) -- [ ] [Use pull-based deployments for improved Kubernetes management](https://docs.gitlab.com/ee/user/clusters/agent/) -- [ ] [Set up protected environments](https://docs.gitlab.com/ee/ci/environments/protected_environments.html) - -*** - -# Editing this README - -When you're ready to make this README your own, just edit this file and use the handy template below (or feel free to structure it however you want - this is just a starting point!). Thank you to [makeareadme.com](https://www.makeareadme.com/) for this template. - -## Suggestions for a good README -Every project is different, so consider which of these sections apply to yours. The sections used in the template are suggestions for most open source projects. Also keep in mind that while a README can be too long and detailed, too long is better than too short. If you think your README is too long, consider utilizing another form of documentation rather than cutting out information. - -## Name -Choose a self-explaining name for your project. - -## Description -Let people know what your project can do specifically. Provide context and add a link to any reference visitors might be unfamiliar with. A list of Features or a Background subsection can also be added here. If there are alternatives to your project, this is a good place to list differentiating factors. - -## Badges -On some READMEs, you may see small images that convey metadata, such as whether or not all the tests are passing for the project. You can use Shields to add some to your README. Many services also have instructions for adding a badge. - -## Visuals -Depending on what you are making, it can be a good idea to include screenshots or even a video (you'll frequently see GIFs rather than actual videos). Tools like ttygif can help, but check out Asciinema for a more sophisticated method. - -## Installation -Within a particular ecosystem, there may be a common way of installing things, such as using Yarn, NuGet, or Homebrew. However, consider the possibility that whoever is reading your README is a novice and would like more guidance. Listing specific steps helps remove ambiguity and gets people to using your project as quickly as possible. If it only runs in a specific context like a particular programming language version or operating system or has dependencies that have to be installed manually, also add a Requirements subsection. - -## Usage -Use examples liberally, and show the expected output if you can. It's helpful to have inline the smallest example of usage that you can demonstrate, while providing links to more sophisticated examples if they are too long to reasonably include in the README. - -## Support -Tell people where they can go to for help. It can be any combination of an issue tracker, a chat room, an email address, etc. - -## Roadmap -If you have ideas for releases in the future, it is a good idea to list them in the README. - -## Contributing -State if you are open to contributions and what your requirements are for accepting them. - -For people who want to make changes to your project, it's helpful to have some documentation on how to get started. Perhaps there is a script that they should run or some environment variables that they need to set. Make these steps explicit. These instructions could also be useful to your future self. - -You can also document commands to lint the code or run tests. These steps help to ensure high code quality and reduce the likelihood that the changes inadvertently break something. Having instructions for running tests is especially helpful if it requires external setup, such as starting a Selenium server for testing in a browser. - -## Authors and acknowledgment -Show your appreciation to those who have contributed to the project. - -## License -For open source projects, say how it is licensed. - -## Project status -If you have run out of energy or time for your project, put a note at the top of the README saying that development has slowed down or stopped completely. Someone may choose to fork your project or volunteer to step in as a maintainer or owner, allowing your project to keep going. You can also make an explicit request for maintainers. diff --git a/docker-compose.yml b/docker-compose.yml new file mode 100644 index 0000000..b3f8bbd --- /dev/null +++ b/docker-compose.yml @@ -0,0 +1,17 @@ +version: '3.4' +networks: + my_network_name: + default: + driver: bridge + +services: + my_service: + container_name: my_service + image: git.astron.nl:5000/location/my_service:latest + networks: + - adex_network + volumes: + - $HOME/shared:/shared + env_file: + - /docker_compose/my_service/.env + - \ No newline at end of file diff --git a/gitlab.vars.png b/gitlab.vars.png new file mode 100644 index 0000000000000000000000000000000000000000..418ed2ffad6bfe689f76d8a683c8d9b7293ad554 GIT binary patch literal 62387 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 literal 0 HcmV?d00001 diff --git a/template.gitlab-ci.yml b/template.gitlab-ci.yml new file mode 100644 index 0000000..e8be100 --- /dev/null +++ b/template.gitlab-ci.yml @@ -0,0 +1,55 @@ +stages: # List of stages for jobs, and their order of execution + - build + - deploy + +workflow: + rules: + - if: $CI_COMMIT_REF_NAME == $CI_DEFAULT_BRANCH + variables: + DOCKER_IMAGE_TAG: ":latest" + - if: $CI_COMMIT_REF_NAME != $CI_DEFAULT_BRANCH + variables: + DOCKER_IMAGE_TAG: ":$CI_COMMIT_REF_NAME" + exists: + - Dockerfile + +docker-build: + image: docker$DOCKER_IMAGE_TAG + stage: build + services: + - docker:dind + before_script: + - docker login -u "$CI_REGISTRY_USER" -p "$CI_REGISTRY_PASSWORD" $CI_REGISTRY + script: + - docker build --pull -t $CI_REGISTRY_IMAGE$DOCKER_IMAGE_TAG . + - docker push $CI_REGISTRY_IMAGE$DOCKER_IMAGE_TAG + +deploy-job: + image: ubuntu:latest + stage: deploy + before_script: + - 'command -v ssh-agent >/dev/null || ( apt-get update -y && apt-get install openssh-client -y )' + - 'command -v rsync >/dev/null || ( apt-get update -y && apt-get install rsync -y )' + - eval $(ssh-agent -s) + - echo "$SSH_PRIVATE_KEY" | tr -d '\r' | ssh-add - + - mkdir -p ~/.ssh + - chmod 700 ~/.ssh + - | + cat > ~/.ssh/config << EOF + Host * + User gitlab-deploy + StrictHostKeyChecking no + EOF + environment: + name: sdc-dev + script: + - rsync -avz docker-compose.yaml $DEPLOY_HOST:$PATH_TO_SERVICE + - rsync -avz $DOT_ENV $DEPLOY_HOST:$SERVICE_DIR/.env + - | + ssh $DEPLOY_HOST -C \ + "cd $SERVICE_DIR &&\ + chmod 600 $SERVICE_DIR/.env &&\ + docker pull $CI_REGISTRY_IMAGE${DOCKER_IMAGE_TAG} &&\ + docker-compose up -d" + - echo "Application successfully deployed." + when: manual \ No newline at end of file -- GitLab