-
Notifications
You must be signed in to change notification settings - Fork 2.6k
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Docker local development setup (#210)
* Docker local development setup * Add DEVELOPMENT.md and update dev Dockerfile * Delete setup.txt and fix DEVELOPMENT.md sequence
- Loading branch information
Showing
2 changed files
with
58 additions
and
0 deletions.
There are no files selected for viewing
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
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,37 @@ | ||
# Development Guide | ||
|
||
## Docker local development setup | ||
|
||
You should have docker installed in your system, if not click [here](https://docs.docker.com/get-docker/). | ||
|
||
1. Go to diagrams root directory. | ||
|
||
2. Build the docker image. | ||
|
||
```shell | ||
docker build --tag diagrams:1.0 -f ./docker/dev/Dockerfile . | ||
``` | ||
|
||
3. Create the container, run in background and mount the project source code. | ||
|
||
```shell | ||
docker run -d \ | ||
-it \ | ||
--name diagrams \ | ||
--mount type=bind,source="$(pwd)",target=/usr/src/diagrams \ | ||
diagrams:1.0 | ||
``` | ||
|
||
4. Run unit tests in the host using the container to confirm that it's working. | ||
```shell | ||
docker exec diagrams python -m unittest tests/*.py -v | ||
``` | ||
5. Run the bash script `autogen.sh` to test. | ||
```shell | ||
docker exec diagrams ./autogen.sh | ||
``` | ||
6. If the unit tests and the bash script `autogen.sh` is working correctly, then your system is now ready for development. |
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
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,21 @@ | ||
# use latest python alphine image. | ||
FROM python:rc-alpine3.12 | ||
|
||
# install system dependencies. | ||
RUN apk update && apk add --no-cache \ | ||
gcc libc-dev g++ graphviz git bash go imagemagick inkscape | ||
|
||
# install go package. | ||
RUN go get github.com/mingrammer/round | ||
|
||
# add go bin to path. | ||
ENV PATH "$PATH:/root/go/bin" | ||
|
||
# project directory. | ||
WORKDIR /usr/src/diagrams | ||
|
||
# Copy the rest of your app's source code from your host to your image filesystem. | ||
COPY . . | ||
|
||
# install python requirements. | ||
RUN pip install black |