Last active
November 20, 2015 18:53
-
-
Save cadecairos/22c0cf3788f9960263cd to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# A postgresql container to store all your dev dataz! | |
pg: | |
# cade/webmaker-postgres is a slightly customized version of the official Docker Hub postgres container | |
image: cade/webmaker-postgres | |
# Enable host networking for the container - effectively making th containers 'localhost' the same as the host | |
net: "host" | |
# Mounts the pg_data folder in this repo to the containers filesystem. | |
# cade/webmaker-postgres is configured to use /var/lib/postgresql/data/pg_data to store data | |
volumes: | |
- ./pg_data:/var/lib/postgresql/data/pg_data | |
# I don't think I need these with host networking, but it is suppose to bind the containers port (on left) to the host port (on right) | |
ports: | |
- "5432:5432" | |
# A MariaDB container for loginAPI (soon to be removed) | |
mariadb: | |
image: mariadb:10 | |
net: "host" | |
# Docker Compose will load this env file and apply the values to the containers environment | |
env_file: compose.mariadb.env | |
# Mounts the mariadb_data folder in this repo to the containers filesystem. | |
# MariaDB will store your data here! | |
volumes: | |
- ./mariadb_data:/var/lib/mysql | |
ports: | |
- "3306:3306" | |
# A Redis cache container, for the caching needs of Webmaker API and ID | |
redis: | |
image: redis:3 | |
net: "host" | |
ports: | |
- "6379:6379" |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# Webmaker API | |
# Use this image as the base for our new one. | |
FROM ubuntu:14.04.2 | |
# Specify a maintainer | |
MAINTAINER Mozilla Foundation <cade@mozillafoundation.org> | |
# install curl | |
RUN apt-get update && apt-get install -y \ | |
curl | |
# Install nodejs LTS PPA | |
RUN curl -sL https://deb.nodesource.com/setup_4.x | sudo bash - | |
# install nodejs LTS | |
RUN apt-get update && apt-get install -y \ | |
nodejs | |
# create webmaker user | |
RUN useradd -d /webmaker webmaker | |
# set working directory | |
WORKDIR /webmaker | |
# Add webmaker-api source code and dependencies | |
COPY . ./ | |
# copy sample env file | |
RUN cp env.sample .env | |
# Expose default webmaker-api port | |
EXPOSE 2015 | |
# fix permissions :| | |
RUN chown -R webmaker:webmaker . | |
# tell docker to run the CMD as this user | |
USER webmaker | |
# Command to execute when starting Webmaker API | |
CMD ["node","server"] |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# The Webmaker API image | |
webmaker: | |
image: cade/webmaker-api:latest | |
# Docker Compose will load this env file and apply the values to the containers environment | |
# This is really useful for customizing the webmaker services configuration | |
env_file: compose.webmaker.env | |
net: "host" | |
# The webmaker ID (OAuth 2) provider | |
id: | |
image: cade/webmaker-id:latest | |
env_file: compose.id.env | |
net: "host" | |
# The legacy Webmaker LoginAPI (soon to be deprecated) | |
loginapi: | |
image: cade/legacy-webmaker-login:latest | |
env_file: compose.loginapi.env | |
net: "host" |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment