Skip to content

Added docker#186

Open
francisbesset wants to merge 2 commits intoCurvytron:masterfrom
francisbesset:docker
Open

Added docker#186
francisbesset wants to merge 2 commits intoCurvytron:masterfrom
francisbesset:docker

Conversation

@francisbesset
Copy link
Copy Markdown
Contributor

I purpose to add docker to build quickly the Curvytron server!

To build:

(curvytron) $ docker build -t curvytron .

To run:

$ docker run --name curvytron -p 80:8080 curvytron

Also, you can add this repository in Docker Hub to use docker pull.

Kiss 💋

@Tom32i
Copy link
Copy Markdown
Contributor

Tom32i commented May 11, 2015

Awesome 👏

@tristanbes
Copy link
Copy Markdown

yay

@emerick42
Copy link
Copy Markdown

Are you sure it's a good practice to RUN a single command combined with logical &&? Also I think the dependencies installation step should be done before the ADD, so it can be cached properly.

@francisbesset
Copy link
Copy Markdown
Contributor Author

@emerick42 Good point!
But the first Dockerfile built an image with a size of 303.4 MB.
If I separate RUN to optimize the cache of different step, I have an image with a size of 537.6 MB.

@emerick42
Copy link
Copy Markdown

Do you know why the container is larger?

@francisbesset
Copy link
Copy Markdown
Contributor Author

Yes! Docker works same that git. Each statement (RUN, ENV, EXPOSE, CMD, ....) is committed.
If you commit a statement, you commit the state of container.

In fact, the first Dockerfile, add dependencies in container but the dependencies are removed in same statement.
In second Dockerfile, the first RUN statement is committed with dependencies.

You can use docker history curvytron to see each commit.

@emerick42
Copy link
Copy Markdown

Ok, I got it. I think the second option is better, at least to respect Docker's way of doing things. Did you check on other official images if they were doing optimizations like this one?

@francisbesset
Copy link
Copy Markdown
Contributor Author

The last version is better to rebuild quickly a new container. It's ~230 MB additional.
To download the initial image from Docker Hub isn't dramatic.

@dbrgn dbrgn mentioned this pull request Sep 17, 2015
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants