-
Notifications
You must be signed in to change notification settings - Fork 1
/
docker-compose.yaml
50 lines (45 loc) · 1.57 KB
/
docker-compose.yaml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
version: "3"
volumes:
dbdata:
services:
# set up a mysql database container. If support for other databases is added, they should be
# added as separate containers.
#
# This container is used to check mysql functionality.
userdata:
image: mysql:5.7.24
command: mysqld --character-set-server=utf8mb4 --collation-server=utf8mb4_unicode_ci
environment:
- MYSQL_ROOT_PASSWORD=secret
- MYSQL_USER=user
- MYSQL_DATABASE=test
- MYSQL_PASSWORD=secret
- TZ=Asia/Tokyo
ports:
- "33061:3306"
volumes:
- dbdata:/var/lib/mysql
- ../todo-code:/opt/todo
# set up a phony bastion. This is a small alpine image with openssh installed. A throwaway key
# is provided in the docker/bastion directory, and this key is copied onto the bastion's root
# folder, and the public key added to the bastion's known hosts. You should be able to ssh into
# this container using the provided key. DO NOT JUST **DO** THIS, PLEASE CHECK THE DOCKERFILE FOR
# YOURSELF TO MAKE SURE NOTHING STUPID OR WEIRD IS IN THERE!
#
# This container exists in order to test the ssh tunneling functionality.
bastion:
build:
context: docker/bastion
dockerfile: Dockerfile
ports:
- "8022:22"
# set up a very simple remote that runs netcat on port 1234 with an automated OK response. The
# bastion will attempt to connect here during tests.
#
# This container exists in order to test the ssh tunneling functionality.
remote:
build:
context: docker/remote
dockerfile: Dockerfile
ports:
- "12341:1234"