commit
68c90c068c
|
|
@ -0,0 +1,15 @@
|
|||
language: go
|
||||
|
||||
sudo: false
|
||||
|
||||
install:
|
||||
- mkdir -p "${GOPATH%%:*}/src/github.com/shurcooL/markdownfmt"
|
||||
- git clone https://github.com/tianon/markdownfmt.git "${GOPATH%%:*}/src/github.com/shurcooL/markdownfmt"
|
||||
- go get -v github.com/shurcooL/markdownfmt
|
||||
|
||||
script:
|
||||
- files="$(find -name '*.md' -print0 | xargs -0 markdownfmt -l)";
|
||||
if [ "$files" ]; then
|
||||
echo >&2 "$files";
|
||||
exit 1;
|
||||
fi
|
||||
|
|
@ -2,11 +2,7 @@
|
|||
|
||||
%%TAGS%%
|
||||
|
||||
For more information about this image and its history, please see the [relevant
|
||||
manifest file
|
||||
(`library/%%REPO%%`)](https://github.com/docker-library/official-images/blob/master/library/%%REPO%%)
|
||||
in the [`docker-library/official-images` GitHub
|
||||
repo](https://github.com/docker-library/official-images).
|
||||
For more information about this image and its history, please see the [relevant manifest file (`library/%%REPO%%`)](https://github.com/docker-library/official-images/blob/master/library/%%REPO%%) in the [`docker-library/official-images` GitHub repo](https://github.com/docker-library/official-images).
|
||||
|
||||
%%CONTENT%%%%LICENSE%%
|
||||
|
||||
|
|
|
|||
107
README.md
107
README.md
|
|
@ -1,59 +1,47 @@
|
|||
# What is this?
|
||||
|
||||
This repository contains the docs for each of the Docker official images. See
|
||||
[docker-library/official-images](https://github.com/docker-library/official-images)
|
||||
for the configuration how the images are built. To see all of the official
|
||||
images go to the
|
||||
[hub](https://registry.hub.docker.com/repos/stackbrew/?&s=alphabetical).
|
||||
This repository contains the docs for each of the Docker official images. See [docker-library/official-images](https://github.com/docker-library/official-images) for the configuration how the images are built. To see all of the official images go to the [hub](https://registry.hub.docker.com/repos/stackbrew/?&s=alphabetical).
|
||||
|
||||
All Markdown files here are run through [tianon's fork of `markdownfmt`](https://github.com/tianon/markdownfmt) (only forked to add some smaller-diff preference and minor DockerHub-compatibility changes), and verified as formatted correctly via Travis-CI.
|
||||
|
||||
# How do I add a new image's docs
|
||||
|
||||
- create a folder for my image: `mkdir myimage`
|
||||
- create a `README-short.txt` (required, 100 char max)
|
||||
- create a `content.md` (required, 80 col wrap)
|
||||
- create a `license.md` (required, 80 col wrap)
|
||||
- add a `logo.png` (recommended)
|
||||
- edit `update.sh` as needed (see below)
|
||||
- run `./update.sh myimage` to generate `myimage/README.md`
|
||||
- create a folder for my image: `mkdir myimage`
|
||||
- create a `README-short.txt` (required, 100 char max)
|
||||
- create a `content.md` (required)
|
||||
- create a `license.md` (required)
|
||||
- add a `logo.png` (recommended)
|
||||
- edit `update.sh` as needed (see below)
|
||||
|
||||
Optionally: (we run this periodically, especially before pushing updated descriptions)
|
||||
|
||||
- run `./update.sh myimage` to generate `myimage/README.md`
|
||||
|
||||
# What are all these files?
|
||||
|
||||
## `update.sh`
|
||||
|
||||
This is the main script used to generate the `README.md` files for each image.
|
||||
The generated file is committed along with the files used to generate it (see
|
||||
below on what customizations are available). When a new image is added that is
|
||||
not under the `docker-library` namespace on GitHub, a new entry must be added to
|
||||
the `otherRepos` array in this script. Accepted arguments are which image(s)
|
||||
you want to update and no arguments to update all of them.
|
||||
This is the main script used to generate the `README.md` files for each image. The generated file is committed along with the files used to generate it (see below on what customizations are available). When a new image is added that is not under the `docker-library` namespace on GitHub, a new entry must be added to the `otherRepos` array in this script. Accepted arguments are which image(s) you want to update and no arguments to update all of them.
|
||||
|
||||
## `push.pl`
|
||||
|
||||
This is used by us to push the actual content of the READMEs to the Docker Hub
|
||||
as special access is required to modify the Hub description contents.
|
||||
This is used by us to push the actual content of the READMEs to the Docker Hub as special access is required to modify the Hub description contents.
|
||||
|
||||
## `generate-dockerfile-links-partial.sh`
|
||||
|
||||
This script is used by `update.sh` to create the "Supported tags and respective
|
||||
`Dockerfile` links" section of each generated `README.md` from the information
|
||||
in the [official-images `library/`
|
||||
manifests](https://github.com/docker-library/official-images/tree/master/library).
|
||||
This script is used by `update.sh` to create the "Supported tags and respective `Dockerfile` links" section of each generated `README.md` from the information in the [official-images `library/` manifests](https://github.com/docker-library/official-images/tree/master/library).
|
||||
|
||||
## `generate-repo-stub-readme.sh`
|
||||
|
||||
This is used to generate a simple `README.md` to put in the image's repo.
|
||||
Argument is the name of the image, like `golang` and it then outputs the readme
|
||||
to standard out.
|
||||
This is used to generate a simple `README.md` to put in the image's repo. Argument is the name of the image, like `golang` and it then outputs the readme to standard out.
|
||||
|
||||
## `README-template.md` and `user-feedback.md`
|
||||
|
||||
These files are the templates used in building the `<image name>/README.md`
|
||||
file, in combination with the individual image's files.
|
||||
These files are the templates used in building the `<image name>/README.md` file, in combination with the individual image's files.
|
||||
|
||||
## folder `<image name>`
|
||||
|
||||
This is where all the partial and generated files for a given image reside, (ex:
|
||||
`golang/`).
|
||||
This is where all the partial and generated files for a given image reside, (ex: `golang/`).
|
||||
|
||||
## `<image name>/README.md`
|
||||
|
||||
|
|
@ -61,64 +49,47 @@ This file is generated using `update.sh`.
|
|||
|
||||
## `<image name>/content.md`
|
||||
|
||||
This file contains the main content of your readme. The basic parts you should
|
||||
have are a "What Is" section and a "How To" section. See the doc on [Official
|
||||
Repos](https://docs.docker.com/docker-hub/official_repos/#a-long-description)
|
||||
for more information on long description. The issues and contribution section
|
||||
is generated by the script but can be overridden. The following is a basic
|
||||
layout:
|
||||
This file contains the main content of your image's long description. The basic parts you should have are a "What Is" section and a "How To" section. See the doc on [Official Repos](https://docs.docker.com/docker-hub/official_repos/#a-long-description) for more information on long description. The issues and contribution section is generated by the script but can be overridden. The following is a basic layout:
|
||||
|
||||
# What is XYZ?
|
||||
|
||||
// about what the contained software is
|
||||
|
||||
%%LOGO%%
|
||||
|
||||
# How to use this image
|
||||
|
||||
// descriptions and examples of common use cases for the image
|
||||
// make use of subsections as necessary
|
||||
# What is XYZ?
|
||||
|
||||
// about what the contained software is
|
||||
|
||||
%%LOGO%%
|
||||
|
||||
# How to use this image
|
||||
|
||||
// descriptions and examples of common use cases for the image
|
||||
// make use of subsections as necessary
|
||||
|
||||
## `<image name>/README-short.txt`
|
||||
|
||||
This is the short description for the docker hub, limited to 100 characters in a
|
||||
single line.
|
||||
This is the short description for the docker hub, limited to 100 characters in a single line.
|
||||
|
||||
> Go (golang) is a general purpose, higher-level, imperative programming language.
|
||||
|
||||
## `<image name>/logo.png`
|
||||
|
||||
Logo for the contained software. Specifications can be found in the docs on
|
||||
[Official Repos](https://docs.docker.com/docker-hub/official_repos/#a-logo)
|
||||
Logo for the contained software. Specifications can be found in the docs on [Official Repos](https://docs.docker.com/docker-hub/official_repos/#a-logo)
|
||||
|
||||
## `<image name>/license.md`
|
||||
|
||||
This file should contain a link to the license for the main software in the
|
||||
image, wrapped to 80 columns. Here is an example for golang:
|
||||
This file should contain a link to the license for the main software in the image. Here is an example for `golang`:
|
||||
|
||||
View [license information](http://golang.org/LICENSE)
|
||||
for the software contained in this image.
|
||||
View [license information](http://golang.org/LICENSE) for the software contained in this image.
|
||||
|
||||
## `<image name>/user-feedback.md`
|
||||
|
||||
This file is an optional override of the default `user-feedback.md` for those
|
||||
repositories with different issue and contributing policies.
|
||||
This file is an optional override of the default `user-feedback.md` for those repositories with different issue and contributing policies.
|
||||
|
||||
## `<image name>/mailing-list.md`
|
||||
|
||||
This file is snippet that gets inserted into the user feedback section to
|
||||
provide and extra way to get help, like a mailing list. Here is an example from
|
||||
the Postgres image:
|
||||
This file is snippet that gets inserted into the user feedback section to provide and extra way to get help, like a mailing list. Here is an example from the Postgres image:
|
||||
|
||||
on the [mailing list](http://www.postgresql.org/community/lists/subscribe/) or
|
||||
on the [mailing list](http://www.postgresql.org/community/lists/subscribe/) or
|
||||
|
||||
# Issues and Contributing
|
||||
|
||||
If you would like to make a new Official Image, be sure to follow the
|
||||
[guidelines](https://docs.docker.com/docker-hub/official_repos/) and talk to
|
||||
partners@docker.com.
|
||||
If you would like to make a new Official Image, be sure to follow the [guidelines](https://docs.docker.com/docker-hub/official_repos/) and talk to partners@docker.com.
|
||||
|
||||
Feel free to make a pull request for fixes and improvements to current
|
||||
documentation. For questions or problems on this repo come talk to us via the
|
||||
`#docker-library` IRC channel on [Freenode](https://freenode.net) or open up an
|
||||
issue.
|
||||
Feel free to make a pull request for fixes and improvements to current documentation. For questions or problems on this repo come talk to us via the `#docker-library` IRC channel on [Freenode](https://freenode.net) or open up an issue.
|
||||
|
|
|
|||
|
|
@ -1,29 +1,20 @@
|
|||
# Supported tags and respective `Dockerfile` links
|
||||
|
||||
- [`jessie-curl`, `curl` (*jessie/curl/Dockerfile*)](https://github.com/docker-library/buildpack-deps/blob/a0a59c61102e8b079d568db69368fb89421f75f2/jessie/curl/Dockerfile)
|
||||
- [`jessie-scm`, `scm` (*jessie/scm/Dockerfile*)](https://github.com/docker-library/buildpack-deps/blob/a0a59c61102e8b079d568db69368fb89421f75f2/jessie/scm/Dockerfile)
|
||||
- [`jessie`, `latest` (*jessie/Dockerfile*)](https://github.com/docker-library/buildpack-deps/blob/a0a59c61102e8b079d568db69368fb89421f75f2/jessie/Dockerfile)
|
||||
- [`sid-curl` (*sid/curl/Dockerfile*)](https://github.com/docker-library/buildpack-deps/blob/a0a59c61102e8b079d568db69368fb89421f75f2/sid/curl/Dockerfile)
|
||||
- [`sid-scm` (*sid/scm/Dockerfile*)](https://github.com/docker-library/buildpack-deps/blob/a0a59c61102e8b079d568db69368fb89421f75f2/sid/scm/Dockerfile)
|
||||
- [`sid` (*sid/Dockerfile*)](https://github.com/docker-library/buildpack-deps/blob/a0a59c61102e8b079d568db69368fb89421f75f2/sid/Dockerfile)
|
||||
- [`wheezy-curl` (*wheezy/curl/Dockerfile*)](https://github.com/docker-library/buildpack-deps/blob/a0a59c61102e8b079d568db69368fb89421f75f2/wheezy/curl/Dockerfile)
|
||||
- [`wheezy-scm` (*wheezy/scm/Dockerfile*)](https://github.com/docker-library/buildpack-deps/blob/a0a59c61102e8b079d568db69368fb89421f75f2/wheezy/scm/Dockerfile)
|
||||
- [`wheezy` (*wheezy/Dockerfile*)](https://github.com/docker-library/buildpack-deps/blob/a0a59c61102e8b079d568db69368fb89421f75f2/wheezy/Dockerfile)
|
||||
- [`jessie-curl`, `curl` (*jessie/curl/Dockerfile*)](https://github.com/docker-library/buildpack-deps/blob/a0a59c61102e8b079d568db69368fb89421f75f2/jessie/curl/Dockerfile)
|
||||
- [`jessie-scm`, `scm` (*jessie/scm/Dockerfile*)](https://github.com/docker-library/buildpack-deps/blob/a0a59c61102e8b079d568db69368fb89421f75f2/jessie/scm/Dockerfile)
|
||||
- [`jessie`, `latest` (*jessie/Dockerfile*)](https://github.com/docker-library/buildpack-deps/blob/a0a59c61102e8b079d568db69368fb89421f75f2/jessie/Dockerfile)
|
||||
- [`sid-curl` (*sid/curl/Dockerfile*)](https://github.com/docker-library/buildpack-deps/blob/a0a59c61102e8b079d568db69368fb89421f75f2/sid/curl/Dockerfile)
|
||||
- [`sid-scm` (*sid/scm/Dockerfile*)](https://github.com/docker-library/buildpack-deps/blob/a0a59c61102e8b079d568db69368fb89421f75f2/sid/scm/Dockerfile)
|
||||
- [`sid` (*sid/Dockerfile*)](https://github.com/docker-library/buildpack-deps/blob/a0a59c61102e8b079d568db69368fb89421f75f2/sid/Dockerfile)
|
||||
- [`wheezy-curl` (*wheezy/curl/Dockerfile*)](https://github.com/docker-library/buildpack-deps/blob/a0a59c61102e8b079d568db69368fb89421f75f2/wheezy/curl/Dockerfile)
|
||||
- [`wheezy-scm` (*wheezy/scm/Dockerfile*)](https://github.com/docker-library/buildpack-deps/blob/a0a59c61102e8b079d568db69368fb89421f75f2/wheezy/scm/Dockerfile)
|
||||
- [`wheezy` (*wheezy/Dockerfile*)](https://github.com/docker-library/buildpack-deps/blob/a0a59c61102e8b079d568db69368fb89421f75f2/wheezy/Dockerfile)
|
||||
|
||||
For more information about this image and its history, please see the [relevant
|
||||
manifest file
|
||||
(`library/buildpack-deps`)](https://github.com/docker-library/official-images/blob/master/library/buildpack-deps)
|
||||
in the [`docker-library/official-images` GitHub
|
||||
repo](https://github.com/docker-library/official-images).
|
||||
For more information about this image and its history, please see the [relevant manifest file (`library/buildpack-deps`)](https://github.com/docker-library/official-images/blob/master/library/buildpack-deps) in the [`docker-library/official-images` GitHub repo](https://github.com/docker-library/official-images).
|
||||
|
||||
# What is `buildpack-deps`?
|
||||
|
||||
In spirit, `buildpack-deps` is similar to [Heroku's stack
|
||||
images](https://github.com/heroku/stack-images/blob/master/bin/cedar.sh). It
|
||||
includes a large number of "development header" packages needed by various
|
||||
things like Ruby Gems, PyPI modules, etc. For example, `buildpack-deps` would
|
||||
let you do a `bundle install` in an arbitrary application directory without
|
||||
knowing beforehand that `ssl.h` is required to build a dependent module.
|
||||
In spirit, `buildpack-deps` is similar to [Heroku's stack images](https://github.com/heroku/stack-images/blob/master/bin/cedar.sh). It includes a large number of "development header" packages needed by various things like Ruby Gems, PyPI modules, etc. For example, `buildpack-deps` would let you do a `bundle install` in an arbitrary application directory without knowing beforehand that `ssl.h` is required to build a dependent module.
|
||||
|
||||

|
||||
|
||||
|
|
@ -33,33 +24,21 @@ This stack is designed to be the foundation of a language-stack image.
|
|||
|
||||
## What's included?
|
||||
|
||||
The main tags of this image are the full batteries-included approach. With
|
||||
them, a majority of arbitrary `gem install` / `npm install` / `pip install`
|
||||
should be successfull without additional header/development packages.
|
||||
The main tags of this image are the full batteries-included approach. With them, a majority of arbitrary `gem install` / `npm install` / `pip install` should be successfull without additional header/development packages.
|
||||
|
||||
For some language stacks, that doesn't make sense, particularly if linking to
|
||||
arbitrary external C libraries is much less common (as in Go and Java, for
|
||||
example), which is where these other smaller variants can come in handy.
|
||||
For some language stacks, that doesn't make sense, particularly if linking to arbitrary external C libraries is much less common (as in Go and Java, for example), which is where these other smaller variants can come in handy.
|
||||
|
||||
### `curl`
|
||||
|
||||
This variant includes just the `curl`, `wget`, and `ca-certificates` packages.
|
||||
This is perfect for cases like the Java JRE, where downloading JARs is very
|
||||
common and necessary, but checking out code isn't.
|
||||
This variant includes just the `curl`, `wget`, and `ca-certificates` packages. This is perfect for cases like the Java JRE, where downloading JARs is very common and necessary, but checking out code isn't.
|
||||
|
||||
### `scm`
|
||||
|
||||
This variant is based on `curl`, but also adds various source control management
|
||||
tools. As of this writing, the current list of included tools is `bzr`, `git`,
|
||||
`hg`, and `svn`. Intentionally missing is `cvs` due to the dwindling relevance
|
||||
it has (sorry CVS). This image is perfect for cases like the Java JDK, where
|
||||
downloading JARs is very common (hence the `curl` base still), but checking out
|
||||
code also becomes more common as well (compared to the JRE).
|
||||
This variant is based on `curl`, but also adds various source control management tools. As of this writing, the current list of included tools is `bzr`, `git`, `hg`, and `svn`. Intentionally missing is `cvs` due to the dwindling relevance it has (sorry CVS). This image is perfect for cases like the Java JDK, where downloading JARs is very common (hence the `curl` base still), but checking out code also becomes more common as well (compared to the JRE).
|
||||
|
||||
# License
|
||||
|
||||
View [license information](https://www.debian.org/social_contract#guidelines)
|
||||
for the software contained in this image.
|
||||
View [license information](https://www.debian.org/social_contract#guidelines) for the software contained in this image.
|
||||
|
||||
# Supported Docker versions
|
||||
|
||||
|
|
@ -71,20 +50,12 @@ Support for older versions (down to 1.0) is provided on a best-effort basis.
|
|||
|
||||
## Issues
|
||||
|
||||
If you have any problems with or questions about this image, please contact us
|
||||
through a [GitHub issue](https://github.com/docker-library/buildpack-deps/issues).
|
||||
If you have any problems with or questions about this image, please contact us through a [GitHub issue](https://github.com/docker-library/buildpack-deps/issues).
|
||||
|
||||
You can also reach many of the official image maintainers via the
|
||||
`#docker-library` IRC channel on [Freenode](https://freenode.net).
|
||||
You can also reach many of the official image maintainers via the `#docker-library` IRC channel on [Freenode](https://freenode.net).
|
||||
|
||||
## Contributing
|
||||
|
||||
You are invited to contribute new features, fixes, or updates, large or small;
|
||||
we are always thrilled to receive pull requests, and do our best to process them
|
||||
as fast as we can.
|
||||
You are invited to contribute new features, fixes, or updates, large or small; we are always thrilled to receive pull requests, and do our best to process them as fast as we can.
|
||||
|
||||
Before you start to code, we recommend discussing your plans
|
||||
through a [GitHub issue](https://github.com/docker-library/buildpack-deps/issues), especially for more ambitious
|
||||
contributions. This gives other contributors a chance to point you in the right
|
||||
direction, give you feedback on your design, and help you find out if someone
|
||||
else is working on the same thing.
|
||||
Before you start to code, we recommend discussing your plans through a [GitHub issue](https://github.com/docker-library/buildpack-deps/issues), especially for more ambitious contributions. This gives other contributors a chance to point you in the right direction, give you feedback on your design, and help you find out if someone else is working on the same thing.
|
||||
|
|
|
|||
|
|
@ -1,11 +1,6 @@
|
|||
# What is `buildpack-deps`?
|
||||
|
||||
In spirit, `buildpack-deps` is similar to [Heroku's stack
|
||||
images](https://github.com/heroku/stack-images/blob/master/bin/cedar.sh). It
|
||||
includes a large number of "development header" packages needed by various
|
||||
things like Ruby Gems, PyPI modules, etc. For example, `buildpack-deps` would
|
||||
let you do a `bundle install` in an arbitrary application directory without
|
||||
knowing beforehand that `ssl.h` is required to build a dependent module.
|
||||
In spirit, `buildpack-deps` is similar to [Heroku's stack images](https://github.com/heroku/stack-images/blob/master/bin/cedar.sh). It includes a large number of "development header" packages needed by various things like Ruby Gems, PyPI modules, etc. For example, `buildpack-deps` would let you do a `bundle install` in an arbitrary application directory without knowing beforehand that `ssl.h` is required to build a dependent module.
|
||||
|
||||
%%LOGO%%
|
||||
|
||||
|
|
@ -15,25 +10,14 @@ This stack is designed to be the foundation of a language-stack image.
|
|||
|
||||
## What's included?
|
||||
|
||||
The main tags of this image are the full batteries-included approach. With
|
||||
them, a majority of arbitrary `gem install` / `npm install` / `pip install`
|
||||
should be successfull without additional header/development packages.
|
||||
The main tags of this image are the full batteries-included approach. With them, a majority of arbitrary `gem install` / `npm install` / `pip install` should be successfull without additional header/development packages.
|
||||
|
||||
For some language stacks, that doesn't make sense, particularly if linking to
|
||||
arbitrary external C libraries is much less common (as in Go and Java, for
|
||||
example), which is where these other smaller variants can come in handy.
|
||||
For some language stacks, that doesn't make sense, particularly if linking to arbitrary external C libraries is much less common (as in Go and Java, for example), which is where these other smaller variants can come in handy.
|
||||
|
||||
### `curl`
|
||||
|
||||
This variant includes just the `curl`, `wget`, and `ca-certificates` packages.
|
||||
This is perfect for cases like the Java JRE, where downloading JARs is very
|
||||
common and necessary, but checking out code isn't.
|
||||
This variant includes just the `curl`, `wget`, and `ca-certificates` packages. This is perfect for cases like the Java JRE, where downloading JARs is very common and necessary, but checking out code isn't.
|
||||
|
||||
### `scm`
|
||||
|
||||
This variant is based on `curl`, but also adds various source control management
|
||||
tools. As of this writing, the current list of included tools is `bzr`, `git`,
|
||||
`hg`, and `svn`. Intentionally missing is `cvs` due to the dwindling relevance
|
||||
it has (sorry CVS). This image is perfect for cases like the Java JDK, where
|
||||
downloading JARs is very common (hence the `curl` base still), but checking out
|
||||
code also becomes more common as well (compared to the JRE).
|
||||
This variant is based on `curl`, but also adds various source control management tools. As of this writing, the current list of included tools is `bzr`, `git`, `hg`, and `svn`. Intentionally missing is `cvs` due to the dwindling relevance it has (sorry CVS). This image is perfect for cases like the Java JDK, where downloading JARs is very common (hence the `curl` base still), but checking out code also becomes more common as well (compared to the JRE).
|
||||
|
|
|
|||
|
|
@ -1,2 +1 @@
|
|||
View [license information](https://www.debian.org/social_contract#guidelines)
|
||||
for the software contained in this image.
|
||||
View [license information](https://www.debian.org/social_contract#guidelines) for the software contained in this image.
|
||||
|
|
|
|||
|
|
@ -1,28 +1,17 @@
|
|||
# Supported tags and respective `Dockerfile` links
|
||||
|
||||
- [`buildroot-2013.08.1` (*Dockerfile*)](https://github.com/jpetazzo/docker-busybox/blob/220a689ce359914af3e08a698d1d74ec7aa0a444/Dockerfile)
|
||||
- [`buildroot-2014.02`, `latest` (*Dockerfile*)](https://github.com/jpetazzo/docker-busybox/blob/91641afe424df5e838bac254d43e09f051ab8c3e/Dockerfile)
|
||||
- [`ubuntu-12.04` (*Dockerfile*)](https://github.com/jpetazzo/docker-busybox/blob/4f6cb64c3b3255c58021dc75100da0088796a108/Dockerfile)
|
||||
- [`ubuntu-14.04` (*Dockerfile*)](https://github.com/jpetazzo/docker-busybox/blob/ca435164f45c40d761fad9ef9b5a76a6ba0d5f1a/Dockerfile)
|
||||
- [`buildroot-2013.08.1` (*Dockerfile*)](https://github.com/jpetazzo/docker-busybox/blob/220a689ce359914af3e08a698d1d74ec7aa0a444/Dockerfile)
|
||||
- [`buildroot-2014.02`, `latest` (*Dockerfile*)](https://github.com/jpetazzo/docker-busybox/blob/91641afe424df5e838bac254d43e09f051ab8c3e/Dockerfile)
|
||||
- [`ubuntu-12.04` (*Dockerfile*)](https://github.com/jpetazzo/docker-busybox/blob/4f6cb64c3b3255c58021dc75100da0088796a108/Dockerfile)
|
||||
- [`ubuntu-14.04` (*Dockerfile*)](https://github.com/jpetazzo/docker-busybox/blob/ca435164f45c40d761fad9ef9b5a76a6ba0d5f1a/Dockerfile)
|
||||
|
||||
For more information about this image and its history, please see the [relevant
|
||||
manifest file
|
||||
(`library/busybox`)](https://github.com/docker-library/official-images/blob/master/library/busybox)
|
||||
in the [`docker-library/official-images` GitHub
|
||||
repo](https://github.com/docker-library/official-images).
|
||||
For more information about this image and its history, please see the [relevant manifest file (`library/busybox`)](https://github.com/docker-library/official-images/blob/master/library/busybox) in the [`docker-library/official-images` GitHub repo](https://github.com/docker-library/official-images).
|
||||
|
||||
# What is BusyBox? The Swiss Army Knife of Embedded Linux
|
||||
|
||||
At about 2.5 Mb in size, [BusyBox](http://www.busybox.net/) is a very good
|
||||
ingredient to craft space-efficient distributions.
|
||||
At about 2.5 Mb in size, [BusyBox](http://www.busybox.net/) is a very good ingredient to craft space-efficient distributions.
|
||||
|
||||
BusyBox combines tiny versions of many common UNIX utilities into a single small
|
||||
executable. It provides replacements for most of the utilities you usually find
|
||||
in GNU fileutils, shellutils, etc. The utilities in BusyBox generally have fewer
|
||||
options than their full-featured GNU cousins; however, the options that are
|
||||
included provide the expected functionality and behave very much like their GNU
|
||||
counterparts. BusyBox provides a fairly complete environment for any small or
|
||||
embedded system.
|
||||
BusyBox combines tiny versions of many common UNIX utilities into a single small executable. It provides replacements for most of the utilities you usually find in GNU fileutils, shellutils, etc. The utilities in BusyBox generally have fewer options than their full-featured GNU cousins; however, the options that are included provide the expected functionality and behave very much like their GNU counterparts. BusyBox provides a fairly complete environment for any small or embedded system.
|
||||
|
||||
> [wikipedia.org/wiki/BusyBox](https://en.wikipedia.org/wiki/BusyBox)
|
||||
|
||||
|
|
@ -32,39 +21,27 @@ embedded system.
|
|||
|
||||
## Run BusyBox shell
|
||||
|
||||
docker run -it --rm busybox
|
||||
docker run -it --rm busybox
|
||||
|
||||
This will drop you into an `sh` shell to allow you to do what you want inside a
|
||||
BusyBox system.
|
||||
This will drop you into an `sh` shell to allow you to do what you want inside a BusyBox system.
|
||||
|
||||
## Create a `Dockerfile` for a binary
|
||||
|
||||
FROM busybox
|
||||
COPY ./my-static-binary /my-static-binary
|
||||
CMD ["/my-static-binary"]
|
||||
FROM busybox
|
||||
COPY ./my-static-binary /my-static-binary
|
||||
CMD ["/my-static-binary"]
|
||||
|
||||
This `Dockerfile` will allow you to create a minimal image for your statically
|
||||
compiled binary. You will have to compile the binary in some other place like
|
||||
another container.
|
||||
This `Dockerfile` will allow you to create a minimal image for your statically compiled binary. You will have to compile the binary in some other place like another container.
|
||||
|
||||
## More about this image
|
||||
|
||||
The tags of this image are built using two different methods. The `ubuntu` tags
|
||||
are using the `busybox-static` package from Ubuntu, adding a few support files
|
||||
so that it works in Docker. It's super fast to build (a minute or even less).
|
||||
The `buildroot` tags are going the long way: they use buildroot to craft a whole
|
||||
filesystem, with busybox but also all required libraries and other support
|
||||
files. It has a stronger guarantee of "this will work". It is also smaller
|
||||
because it's using uclibc, however it takes hours to build.
|
||||
The tags of this image are built using two different methods. The `ubuntu` tags are using the `busybox-static` package from Ubuntu, adding a few support files so that it works in Docker. It's super fast to build (a minute or even less). The `buildroot` tags are going the long way: they use buildroot to craft a whole filesystem, with busybox but also all required libraries and other support files. It has a stronger guarantee of "this will work". It is also smaller because it's using uclibc, however it takes hours to build.
|
||||
|
||||
Having two totally different builders means that if one of the goes belly up, we
|
||||
can always fall-back on the other since this image is used in much of build
|
||||
testing of `docker` itself.
|
||||
Having two totally different builders means that if one of the goes belly up, we can always fall-back on the other since this image is used in much of build testing of `docker` itself.
|
||||
|
||||
# License
|
||||
|
||||
View [license information](http://www.busybox.net/license.html)
|
||||
for the software contained in this image.
|
||||
View [license information](http://www.busybox.net/license.html) for the software contained in this image.
|
||||
|
||||
# Supported Docker versions
|
||||
|
||||
|
|
@ -76,20 +53,12 @@ Support for older versions (down to 1.0) is provided on a best-effort basis.
|
|||
|
||||
## Issues
|
||||
|
||||
If you have any problems with or questions about this image, please contact us
|
||||
through a [GitHub issue](https://github.com/jpetazzo/docker-busybox/issues).
|
||||
If you have any problems with or questions about this image, please contact us through a [GitHub issue](https://github.com/jpetazzo/docker-busybox/issues).
|
||||
|
||||
You can also reach many of the official image maintainers via the
|
||||
`#docker-library` IRC channel on [Freenode](https://freenode.net).
|
||||
You can also reach many of the official image maintainers via the `#docker-library` IRC channel on [Freenode](https://freenode.net).
|
||||
|
||||
## Contributing
|
||||
|
||||
You are invited to contribute new features, fixes, or updates, large or small;
|
||||
we are always thrilled to receive pull requests, and do our best to process them
|
||||
as fast as we can.
|
||||
You are invited to contribute new features, fixes, or updates, large or small; we are always thrilled to receive pull requests, and do our best to process them as fast as we can.
|
||||
|
||||
Before you start to code, we recommend discussing your plans
|
||||
through a [GitHub issue](https://github.com/jpetazzo/docker-busybox/issues), especially for more ambitious
|
||||
contributions. This gives other contributors a chance to point you in the right
|
||||
direction, give you feedback on your design, and help you find out if someone
|
||||
else is working on the same thing.
|
||||
Before you start to code, we recommend discussing your plans through a [GitHub issue](https://github.com/jpetazzo/docker-busybox/issues), especially for more ambitious contributions. This gives other contributors a chance to point you in the right direction, give you feedback on your design, and help you find out if someone else is working on the same thing.
|
||||
|
|
|
|||
|
|
@ -1,15 +1,8 @@
|
|||
# What is BusyBox? The Swiss Army Knife of Embedded Linux
|
||||
|
||||
At about 2.5 Mb in size, [BusyBox](http://www.busybox.net/) is a very good
|
||||
ingredient to craft space-efficient distributions.
|
||||
At about 2.5 Mb in size, [BusyBox](http://www.busybox.net/) is a very good ingredient to craft space-efficient distributions.
|
||||
|
||||
BusyBox combines tiny versions of many common UNIX utilities into a single small
|
||||
executable. It provides replacements for most of the utilities you usually find
|
||||
in GNU fileutils, shellutils, etc. The utilities in BusyBox generally have fewer
|
||||
options than their full-featured GNU cousins; however, the options that are
|
||||
included provide the expected functionality and behave very much like their GNU
|
||||
counterparts. BusyBox provides a fairly complete environment for any small or
|
||||
embedded system.
|
||||
BusyBox combines tiny versions of many common UNIX utilities into a single small executable. It provides replacements for most of the utilities you usually find in GNU fileutils, shellutils, etc. The utilities in BusyBox generally have fewer options than their full-featured GNU cousins; however, the options that are included provide the expected functionality and behave very much like their GNU counterparts. BusyBox provides a fairly complete environment for any small or embedded system.
|
||||
|
||||
> [wikipedia.org/wiki/BusyBox](https://en.wikipedia.org/wiki/BusyBox)
|
||||
|
||||
|
|
@ -19,31 +12,20 @@ embedded system.
|
|||
|
||||
## Run BusyBox shell
|
||||
|
||||
docker run -it --rm busybox
|
||||
docker run -it --rm busybox
|
||||
|
||||
This will drop you into an `sh` shell to allow you to do what you want inside a
|
||||
BusyBox system.
|
||||
This will drop you into an `sh` shell to allow you to do what you want inside a BusyBox system.
|
||||
|
||||
## Create a `Dockerfile` for a binary
|
||||
|
||||
FROM busybox
|
||||
COPY ./my-static-binary /my-static-binary
|
||||
CMD ["/my-static-binary"]
|
||||
FROM busybox
|
||||
COPY ./my-static-binary /my-static-binary
|
||||
CMD ["/my-static-binary"]
|
||||
|
||||
This `Dockerfile` will allow you to create a minimal image for your statically
|
||||
compiled binary. You will have to compile the binary in some other place like
|
||||
another container.
|
||||
This `Dockerfile` will allow you to create a minimal image for your statically compiled binary. You will have to compile the binary in some other place like another container.
|
||||
|
||||
## More about this image
|
||||
|
||||
The tags of this image are built using two different methods. The `ubuntu` tags
|
||||
are using the `busybox-static` package from Ubuntu, adding a few support files
|
||||
so that it works in Docker. It's super fast to build (a minute or even less).
|
||||
The `buildroot` tags are going the long way: they use buildroot to craft a whole
|
||||
filesystem, with busybox but also all required libraries and other support
|
||||
files. It has a stronger guarantee of "this will work". It is also smaller
|
||||
because it's using uclibc, however it takes hours to build.
|
||||
The tags of this image are built using two different methods. The `ubuntu` tags are using the `busybox-static` package from Ubuntu, adding a few support files so that it works in Docker. It's super fast to build (a minute or even less). The `buildroot` tags are going the long way: they use buildroot to craft a whole filesystem, with busybox but also all required libraries and other support files. It has a stronger guarantee of "this will work". It is also smaller because it's using uclibc, however it takes hours to build.
|
||||
|
||||
Having two totally different builders means that if one of the goes belly up, we
|
||||
can always fall-back on the other since this image is used in much of build
|
||||
testing of `docker` itself.
|
||||
Having two totally different builders means that if one of the goes belly up, we can always fall-back on the other since this image is used in much of build testing of `docker` itself.
|
||||
|
|
|
|||
|
|
@ -1,2 +1 @@
|
|||
View [license information](http://www.busybox.net/license.html)
|
||||
for the software contained in this image.
|
||||
View [license information](http://www.busybox.net/license.html) for the software contained in this image.
|
||||
|
|
|
|||
137
centos/README.md
137
centos/README.md
|
|
@ -1,33 +1,17 @@
|
|||
# Supported tags and respective `Dockerfile` links
|
||||
|
||||
- [`latest`, `centos7`, `7` (*docker/Dockerfile*)](https://github.com/CentOS/sig-cloud-instance-images/blob/d2b1f36081f946ea48236d3e7069a10cc7216b46/docker/Dockerfile)
|
||||
- [`centos6`, `6` (*docker/Dockerfile*)](https://github.com/CentOS/sig-cloud-instance-images/blob/01f3dc82f23069f0298c236e40e797b782b66f4f/docker/Dockerfile)
|
||||
- [`centos5`, `5` (*docker/Dockerfile*)](https://github.com/CentOS/sig-cloud-instance-images/blob/b60ba9719c49307c019be6be6fc9de66ea17cdb7/docker/Dockerfile)
|
||||
- [`centos7.0.1406`, `7.0.1406` (*docker/Dockerfile*)](https://github.com/CentOS/sig-cloud-instance-images/blob/78324d2ab4fa3a51af6f8684714897620c8187e2/docker/Dockerfile)
|
||||
- [`centos6.6`, `6.6` (*docker/Dockerfile*)](https://github.com/CentOS/sig-cloud-instance-images/blob/093057200201be5b04f19ba68f5ec284d9e6629c/docker/Dockerfile)
|
||||
- [`centos5.11`, `5.11` (*docker/Dockerfile*)](https://github.com/CentOS/sig-cloud-instance-images/blob/c22c7dcaa7a852a15f9b97865ba1d93b04b0d5fb/docker/Dockerfile)
|
||||
- [`latest`, `centos7`, `7` (*docker/Dockerfile*)](https://github.com/CentOS/sig-cloud-instance-images/blob/d2b1f36081f946ea48236d3e7069a10cc7216b46/docker/Dockerfile)
|
||||
- [`centos6`, `6` (*docker/Dockerfile*)](https://github.com/CentOS/sig-cloud-instance-images/blob/01f3dc82f23069f0298c236e40e797b782b66f4f/docker/Dockerfile)
|
||||
- [`centos5`, `5` (*docker/Dockerfile*)](https://github.com/CentOS/sig-cloud-instance-images/blob/b60ba9719c49307c019be6be6fc9de66ea17cdb7/docker/Dockerfile)
|
||||
- [`centos7.0.1406`, `7.0.1406` (*docker/Dockerfile*)](https://github.com/CentOS/sig-cloud-instance-images/blob/78324d2ab4fa3a51af6f8684714897620c8187e2/docker/Dockerfile)
|
||||
- [`centos6.6`, `6.6` (*docker/Dockerfile*)](https://github.com/CentOS/sig-cloud-instance-images/blob/093057200201be5b04f19ba68f5ec284d9e6629c/docker/Dockerfile)
|
||||
- [`centos5.11`, `5.11` (*docker/Dockerfile*)](https://github.com/CentOS/sig-cloud-instance-images/blob/c22c7dcaa7a852a15f9b97865ba1d93b04b0d5fb/docker/Dockerfile)
|
||||
|
||||
For more information about this image and its history, please see the [relevant
|
||||
manifest file
|
||||
(`library/centos`)](https://github.com/docker-library/official-images/blob/master/library/centos)
|
||||
in the [`docker-library/official-images` GitHub
|
||||
repo](https://github.com/docker-library/official-images).
|
||||
For more information about this image and its history, please see the [relevant manifest file (`library/centos`)](https://github.com/docker-library/official-images/blob/master/library/centos) in the [`docker-library/official-images` GitHub repo](https://github.com/docker-library/official-images).
|
||||
|
||||
# CentOS
|
||||
|
||||
CentOS Linux is a community-supported distribution derived from sources
|
||||
freely provided to the public by [Red Hat](ftp://ftp.redhat.com/pub/redhat/linux/enterprise/)
|
||||
for Red Hat Enterprise Linux (RHEL). As such, CentOS Linux aims to be
|
||||
functionally compatible with RHEL. The CentOS Project mainly changes
|
||||
packages to remove upstream vendor branding and artwork. CentOS Linux
|
||||
is no-cost and free to redistribute. Each CentOS Linux version is maintained
|
||||
for up to 10 years (by means of security updates -- the duration of the
|
||||
support interval by Red Hat has varied over time with respect to Sources
|
||||
released). A new CentOS Linux version is released approximately every 2 years
|
||||
and each CentOS Linux version is periodically updated (roughly every 6 months)
|
||||
to support newer hardware. This results in a secure, low-maintenance,
|
||||
reliable, predictable, and reproducible Linux environment.
|
||||
|
||||
CentOS Linux is a community-supported distribution derived from sources freely provided to the public by [Red Hat](ftp://ftp.redhat.com/pub/redhat/linux/enterprise/) for Red Hat Enterprise Linux (RHEL). As such, CentOS Linux aims to be functionally compatible with RHEL. The CentOS Project mainly changes packages to remove upstream vendor branding and artwork. CentOS Linux is no-cost and free to redistribute. Each CentOS Linux version is maintained for up to 10 years (by means of security updates -- the duration of the support interval by Red Hat has varied over time with respect to Sources released). A new CentOS Linux version is released approximately every 2 years and each CentOS Linux version is periodically updated (roughly every 6 months) to support newer hardware. This results in a secure, low-maintenance, reliable, predictable, and reproducible Linux environment.
|
||||
|
||||
> [wiki.centos.org](https://wiki.centos.org/FrontPage)
|
||||
|
||||
|
|
@ -35,94 +19,69 @@ reliable, predictable, and reproducible Linux environment.
|
|||
|
||||
# CentOS image documentation
|
||||
|
||||
The `centos:latest` tag is always the most recent version currently
|
||||
available.
|
||||
The `centos:latest` tag is always the most recent version currently available.
|
||||
|
||||
## Rolling builds
|
||||
|
||||
The CentOS Project offers regularly updated images for all active releases.
|
||||
These images will be updated monthly or as needed for emergency fixes. These
|
||||
rolling updates are tagged with the major version number only.
|
||||
For example: `docker pull centos:6` or `docker pull centos:7`
|
||||
The CentOS Project offers regularly updated images for all active releases. These images will be updated monthly or as needed for emergency fixes. These rolling updates are tagged with the major version number only. For example: `docker pull centos:6` or `docker pull centos:7`
|
||||
|
||||
## Minor tags
|
||||
|
||||
Additionally, images with minor version tags that correspond to install media
|
||||
are also offered. **These images DO NOT recieve updates** as they are intended
|
||||
to match installation iso contents. If you choose to use these images it is
|
||||
highly recommended that you include `RUN yum -y update && yum clean all`
|
||||
in your Dockerfile, or otherwise address any potential security concerns.
|
||||
To use these images, please specify the minor version tag:
|
||||
Additionally, images with minor version tags that correspond to install media are also offered. **These images DO NOT recieve updates** as they are intended to match installation iso contents. If you choose to use these images it is highly recommended that you include `RUN yum -y update && yum clean all` in your Dockerfile, or otherwise address any potential security concerns. To use these images, please specify the minor version tag:
|
||||
|
||||
For example: `docker pull centos:5.11` or `docker pull centos:6.6`
|
||||
|
||||
# Package documentation
|
||||
|
||||
By default, the CentOS containers are built using yum's `nodocs` option, which
|
||||
helps reduce the size of the image. If you install a package and discover
|
||||
files missing, please comment out the line `tsflags=nodocs` in `/etc/yum.conf`
|
||||
and reinstall your package.
|
||||
|
||||
|
||||
By default, the CentOS containers are built using yum's `nodocs` option, which helps reduce the size of the image. If you install a package and discover files missing, please comment out the line `tsflags=nodocs` in `/etc/yum.conf` and reinstall your package.
|
||||
|
||||
# Systemd integration
|
||||
|
||||
Currently, systemd in CentOS 7 has been removed and replaced with a
|
||||
`fakesystemd` package for dependency resolution. This is due to systemd
|
||||
requiring the `CAP_SYS_ADMIN` capability, as well as being able to read
|
||||
the host's cgroups. If you wish to replace the fakesystemd package and
|
||||
use systemd normally, please follow the steps below.
|
||||
Currently, systemd in CentOS 7 has been removed and replaced with a `fakesystemd` package for dependency resolution. This is due to systemd requiring the `CAP_SYS_ADMIN` capability, as well as being able to read the host's cgroups. If you wish to replace the fakesystemd package and use systemd normally, please follow the steps below.
|
||||
|
||||
## Dockerfile for systemd base image
|
||||
|
||||
FROM centos:7
|
||||
MAINTAINER "you" <your@email.here>
|
||||
ENV container docker
|
||||
RUN yum -y swap -- remove fakesystemd -- install systemd systemd-libs
|
||||
RUN yum -y update; yum clean all; \
|
||||
(cd /lib/systemd/system/sysinit.target.wants/; for i in *; do [ $i ==
|
||||
systemd-tmpfiles-setup.service ] || rm -f $i; done); \
|
||||
rm -f /lib/systemd/system/multi-user.target.wants/*;\
|
||||
rm -f /etc/systemd/system/*.wants/*;\
|
||||
rm -f /lib/systemd/system/local-fs.target.wants/*; \
|
||||
rm -f /lib/systemd/system/sockets.target.wants/*udev*; \
|
||||
rm -f /lib/systemd/system/sockets.target.wants/*initctl*; \
|
||||
rm -f /lib/systemd/system/basic.target.wants/*;\
|
||||
rm -f /lib/systemd/system/anaconda.target.wants/*;
|
||||
VOLUME [ "/sys/fs/cgroup" ]
|
||||
CMD ["/usr/sbin/init"]
|
||||
FROM centos:7
|
||||
MAINTAINER "you" <your@email.here>
|
||||
ENV container docker
|
||||
RUN yum -y swap -- remove fakesystemd -- install systemd systemd-libs
|
||||
RUN yum -y update; yum clean all; \
|
||||
(cd /lib/systemd/system/sysinit.target.wants/; for i in *; do [ $i ==
|
||||
systemd-tmpfiles-setup.service ] || rm -f $i; done); \
|
||||
rm -f /lib/systemd/system/multi-user.target.wants/*;\
|
||||
rm -f /etc/systemd/system/*.wants/*;\
|
||||
rm -f /lib/systemd/system/local-fs.target.wants/*; \
|
||||
rm -f /lib/systemd/system/sockets.target.wants/*udev*; \
|
||||
rm -f /lib/systemd/system/sockets.target.wants/*initctl*; \
|
||||
rm -f /lib/systemd/system/basic.target.wants/*;\
|
||||
rm -f /lib/systemd/system/anaconda.target.wants/*;
|
||||
VOLUME [ "/sys/fs/cgroup" ]
|
||||
CMD ["/usr/sbin/init"]
|
||||
|
||||
This Dockerfile swaps out fakesystemd for the real package, but deletes a
|
||||
number of unit files which might cause issues. From here, you are ready
|
||||
to build your base image.
|
||||
This Dockerfile swaps out fakesystemd for the real package, but deletes a number of unit files which might cause issues. From here, you are ready to build your base image.
|
||||
|
||||
docker build --rm -t local/c7-systemd .
|
||||
docker build --rm -t local/c7-systemd .
|
||||
|
||||
## Example systemd enabled app container
|
||||
|
||||
In order to use the systemd enabled base container created above, you will
|
||||
need to create your `Dockerfile` similar to the one below.
|
||||
In order to use the systemd enabled base container created above, you will need to create your `Dockerfile` similar to the one below.
|
||||
|
||||
FROM local/c7-systemd
|
||||
RUN yum -y install httpd; yum clean all; systemctl enable httpd.service
|
||||
EXPOSE 80
|
||||
CMD ["/usr/sbin/init"]
|
||||
FROM local/c7-systemd
|
||||
RUN yum -y install httpd; yum clean all; systemctl enable httpd.service
|
||||
EXPOSE 80
|
||||
CMD ["/usr/sbin/init"]
|
||||
|
||||
Build this image:
|
||||
|
||||
docker build --rm -t local/c7-systemd-httpd
|
||||
docker build --rm -t local/c7-systemd-httpd
|
||||
|
||||
## Running a systemd enabled app container
|
||||
|
||||
In order to run a container with systemd, you will need to use the
|
||||
`--privileged` option mentioned earlier, as well as mounting the cgroups
|
||||
volumes from the host. Below is an example command that will run the
|
||||
systemd enabled httpd container created earlier.
|
||||
In order to run a container with systemd, you will need to use the `--privileged` option mentioned earlier, as well as mounting the cgroups volumes from the host. Below is an example command that will run the systemd enabled httpd container created earlier.
|
||||
|
||||
docker run --privileged -ti -v /sys/fs/cgroup:/sys/fs/cgroup:ro -p 80:80 local/c7-systemd-httpd
|
||||
docker run --privileged -ti -v /sys/fs/cgroup:/sys/fs/cgroup:ro -p 80:80 local/c7-systemd-httpd
|
||||
|
||||
This container is running with systemd in a limited context, but it must
|
||||
always be run as a privileged container with the cgroups filesystem mounted.
|
||||
This container is running with systemd in a limited context, but it must always be run as a privileged container with the cgroups filesystem mounted.
|
||||
|
||||
# Supported Docker versions
|
||||
|
||||
|
|
@ -134,20 +93,12 @@ Support for older versions (down to 1.0) is provided on a best-effort basis.
|
|||
|
||||
## Issues
|
||||
|
||||
If you have any problems with or questions about this image, please contact us
|
||||
by submitting a ticket at [https://bugs.centos.org](https://bugs.centos.org) or through a [GitHub issue](https://github.com/CentOS/sig-cloud-instance-images/issues).
|
||||
If you have any problems with or questions about this image, please contact us by submitting a ticket at [https://bugs.centos.org](https://bugs.centos.org) or through a [GitHub issue](https://github.com/CentOS/sig-cloud-instance-images/issues).
|
||||
|
||||
You can also reach many of the official image maintainers via the
|
||||
`#docker-library` IRC channel on [Freenode](https://freenode.net).
|
||||
You can also reach many of the official image maintainers via the `#docker-library` IRC channel on [Freenode](https://freenode.net).
|
||||
|
||||
## Contributing
|
||||
|
||||
You are invited to contribute new features, fixes, or updates, large or small;
|
||||
we are always thrilled to receive pull requests, and do our best to process them
|
||||
as fast as we can.
|
||||
You are invited to contribute new features, fixes, or updates, large or small; we are always thrilled to receive pull requests, and do our best to process them as fast as we can.
|
||||
|
||||
Before you start to code, we recommend discussing your plans by submitting a ticket at [https://bugs.centos.org](https://bugs.centos.org) or
|
||||
through a [GitHub issue](https://github.com/CentOS/sig-cloud-instance-images/issues), especially for more ambitious
|
||||
contributions. This gives other contributors a chance to point you in the right
|
||||
direction, give you feedback on your design, and help you find out if someone
|
||||
else is working on the same thing.
|
||||
Before you start to code, we recommend discussing your plans by submitting a ticket at [https://bugs.centos.org](https://bugs.centos.org) or through a [GitHub issue](https://github.com/CentOS/sig-cloud-instance-images/issues), especially for more ambitious contributions. This gives other contributors a chance to point you in the right direction, give you feedback on your design, and help you find out if someone else is working on the same thing.
|
||||
|
|
|
|||
|
|
@ -1,18 +1,6 @@
|
|||
# CentOS
|
||||
|
||||
CentOS Linux is a community-supported distribution derived from sources
|
||||
freely provided to the public by [Red Hat](ftp://ftp.redhat.com/pub/redhat/linux/enterprise/)
|
||||
for Red Hat Enterprise Linux (RHEL). As such, CentOS Linux aims to be
|
||||
functionally compatible with RHEL. The CentOS Project mainly changes
|
||||
packages to remove upstream vendor branding and artwork. CentOS Linux
|
||||
is no-cost and free to redistribute. Each CentOS Linux version is maintained
|
||||
for up to 10 years (by means of security updates -- the duration of the
|
||||
support interval by Red Hat has varied over time with respect to Sources
|
||||
released). A new CentOS Linux version is released approximately every 2 years
|
||||
and each CentOS Linux version is periodically updated (roughly every 6 months)
|
||||
to support newer hardware. This results in a secure, low-maintenance,
|
||||
reliable, predictable, and reproducible Linux environment.
|
||||
|
||||
CentOS Linux is a community-supported distribution derived from sources freely provided to the public by [Red Hat](ftp://ftp.redhat.com/pub/redhat/linux/enterprise/) for Red Hat Enterprise Linux (RHEL). As such, CentOS Linux aims to be functionally compatible with RHEL. The CentOS Project mainly changes packages to remove upstream vendor branding and artwork. CentOS Linux is no-cost and free to redistribute. Each CentOS Linux version is maintained for up to 10 years (by means of security updates -- the duration of the support interval by Red Hat has varied over time with respect to Sources released). A new CentOS Linux version is released approximately every 2 years and each CentOS Linux version is periodically updated (roughly every 6 months) to support newer hardware. This results in a secure, low-maintenance, reliable, predictable, and reproducible Linux environment.
|
||||
|
||||
> [wiki.centos.org](https://wiki.centos.org/FrontPage)
|
||||
|
||||
|
|
@ -20,91 +8,66 @@ reliable, predictable, and reproducible Linux environment.
|
|||
|
||||
# CentOS image documentation
|
||||
|
||||
The `centos:latest` tag is always the most recent version currently
|
||||
available.
|
||||
The `centos:latest` tag is always the most recent version currently available.
|
||||
|
||||
## Rolling builds
|
||||
|
||||
The CentOS Project offers regularly updated images for all active releases.
|
||||
These images will be updated monthly or as needed for emergency fixes. These
|
||||
rolling updates are tagged with the major version number only.
|
||||
For example: `docker pull centos:6` or `docker pull centos:7`
|
||||
The CentOS Project offers regularly updated images for all active releases. These images will be updated monthly or as needed for emergency fixes. These rolling updates are tagged with the major version number only. For example: `docker pull centos:6` or `docker pull centos:7`
|
||||
|
||||
## Minor tags
|
||||
|
||||
Additionally, images with minor version tags that correspond to install media
|
||||
are also offered. **These images DO NOT recieve updates** as they are intended
|
||||
to match installation iso contents. If you choose to use these images it is
|
||||
highly recommended that you include `RUN yum -y update && yum clean all`
|
||||
in your Dockerfile, or otherwise address any potential security concerns.
|
||||
To use these images, please specify the minor version tag:
|
||||
Additionally, images with minor version tags that correspond to install media are also offered. **These images DO NOT recieve updates** as they are intended to match installation iso contents. If you choose to use these images it is highly recommended that you include `RUN yum -y update && yum clean all` in your Dockerfile, or otherwise address any potential security concerns. To use these images, please specify the minor version tag:
|
||||
|
||||
For example: `docker pull centos:5.11` or `docker pull centos:6.6`
|
||||
|
||||
# Package documentation
|
||||
|
||||
By default, the CentOS containers are built using yum's `nodocs` option, which
|
||||
helps reduce the size of the image. If you install a package and discover
|
||||
files missing, please comment out the line `tsflags=nodocs` in `/etc/yum.conf`
|
||||
and reinstall your package.
|
||||
|
||||
|
||||
By default, the CentOS containers are built using yum's `nodocs` option, which helps reduce the size of the image. If you install a package and discover files missing, please comment out the line `tsflags=nodocs` in `/etc/yum.conf` and reinstall your package.
|
||||
|
||||
# Systemd integration
|
||||
|
||||
Currently, systemd in CentOS 7 has been removed and replaced with a
|
||||
`fakesystemd` package for dependency resolution. This is due to systemd
|
||||
requiring the `CAP_SYS_ADMIN` capability, as well as being able to read
|
||||
the host's cgroups. If you wish to replace the fakesystemd package and
|
||||
use systemd normally, please follow the steps below.
|
||||
Currently, systemd in CentOS 7 has been removed and replaced with a `fakesystemd` package for dependency resolution. This is due to systemd requiring the `CAP_SYS_ADMIN` capability, as well as being able to read the host's cgroups. If you wish to replace the fakesystemd package and use systemd normally, please follow the steps below.
|
||||
|
||||
## Dockerfile for systemd base image
|
||||
|
||||
FROM centos:7
|
||||
MAINTAINER "you" <your@email.here>
|
||||
ENV container docker
|
||||
RUN yum -y swap -- remove fakesystemd -- install systemd systemd-libs
|
||||
RUN yum -y update; yum clean all; \
|
||||
(cd /lib/systemd/system/sysinit.target.wants/; for i in *; do [ $i ==
|
||||
systemd-tmpfiles-setup.service ] || rm -f $i; done); \
|
||||
rm -f /lib/systemd/system/multi-user.target.wants/*;\
|
||||
rm -f /etc/systemd/system/*.wants/*;\
|
||||
rm -f /lib/systemd/system/local-fs.target.wants/*; \
|
||||
rm -f /lib/systemd/system/sockets.target.wants/*udev*; \
|
||||
rm -f /lib/systemd/system/sockets.target.wants/*initctl*; \
|
||||
rm -f /lib/systemd/system/basic.target.wants/*;\
|
||||
rm -f /lib/systemd/system/anaconda.target.wants/*;
|
||||
VOLUME [ "/sys/fs/cgroup" ]
|
||||
CMD ["/usr/sbin/init"]
|
||||
FROM centos:7
|
||||
MAINTAINER "you" <your@email.here>
|
||||
ENV container docker
|
||||
RUN yum -y swap -- remove fakesystemd -- install systemd systemd-libs
|
||||
RUN yum -y update; yum clean all; \
|
||||
(cd /lib/systemd/system/sysinit.target.wants/; for i in *; do [ $i ==
|
||||
systemd-tmpfiles-setup.service ] || rm -f $i; done); \
|
||||
rm -f /lib/systemd/system/multi-user.target.wants/*;\
|
||||
rm -f /etc/systemd/system/*.wants/*;\
|
||||
rm -f /lib/systemd/system/local-fs.target.wants/*; \
|
||||
rm -f /lib/systemd/system/sockets.target.wants/*udev*; \
|
||||
rm -f /lib/systemd/system/sockets.target.wants/*initctl*; \
|
||||
rm -f /lib/systemd/system/basic.target.wants/*;\
|
||||
rm -f /lib/systemd/system/anaconda.target.wants/*;
|
||||
VOLUME [ "/sys/fs/cgroup" ]
|
||||
CMD ["/usr/sbin/init"]
|
||||
|
||||
This Dockerfile swaps out fakesystemd for the real package, but deletes a
|
||||
number of unit files which might cause issues. From here, you are ready
|
||||
to build your base image.
|
||||
This Dockerfile swaps out fakesystemd for the real package, but deletes a number of unit files which might cause issues. From here, you are ready to build your base image.
|
||||
|
||||
docker build --rm -t local/c7-systemd .
|
||||
docker build --rm -t local/c7-systemd .
|
||||
|
||||
## Example systemd enabled app container
|
||||
|
||||
In order to use the systemd enabled base container created above, you will
|
||||
need to create your `Dockerfile` similar to the one below.
|
||||
In order to use the systemd enabled base container created above, you will need to create your `Dockerfile` similar to the one below.
|
||||
|
||||
FROM local/c7-systemd
|
||||
RUN yum -y install httpd; yum clean all; systemctl enable httpd.service
|
||||
EXPOSE 80
|
||||
CMD ["/usr/sbin/init"]
|
||||
FROM local/c7-systemd
|
||||
RUN yum -y install httpd; yum clean all; systemctl enable httpd.service
|
||||
EXPOSE 80
|
||||
CMD ["/usr/sbin/init"]
|
||||
|
||||
Build this image:
|
||||
|
||||
docker build --rm -t local/c7-systemd-httpd
|
||||
docker build --rm -t local/c7-systemd-httpd
|
||||
|
||||
## Running a systemd enabled app container
|
||||
|
||||
In order to run a container with systemd, you will need to use the
|
||||
`--privileged` option mentioned earlier, as well as mounting the cgroups
|
||||
volumes from the host. Below is an example command that will run the
|
||||
systemd enabled httpd container created earlier.
|
||||
In order to run a container with systemd, you will need to use the `--privileged` option mentioned earlier, as well as mounting the cgroups volumes from the host. Below is an example command that will run the systemd enabled httpd container created earlier.
|
||||
|
||||
docker run --privileged -ti -v /sys/fs/cgroup:/sys/fs/cgroup:ro -p 80:80 local/c7-systemd-httpd
|
||||
docker run --privileged -ti -v /sys/fs/cgroup:/sys/fs/cgroup:ro -p 80:80 local/c7-systemd-httpd
|
||||
|
||||
This container is running with systemd in a limited context, but it must
|
||||
always be run as a privileged container with the cgroups filesystem mounted.
|
||||
This container is running with systemd in a limited context, but it must always be run as a privileged container with the cgroups filesystem mounted.
|
||||
|
|
|
|||
|
|
@ -1,12 +1,8 @@
|
|||
# Supported tags and respective `Dockerfile` links
|
||||
|
||||
- [`latest`, `0.3.3` (*Dockerfile*)](https://github.com/ewindisch/docker-cirros/blob/5ef3f5024b0aa80553cc34be9eff6685cb31b458/Dockerfile)
|
||||
- [`latest`, `0.3.3` (*Dockerfile*)](https://github.com/ewindisch/docker-cirros/blob/5ef3f5024b0aa80553cc34be9eff6685cb31b458/Dockerfile)
|
||||
|
||||
For more information about this image and its history, please see the [relevant
|
||||
manifest file
|
||||
(`library/cirros`)](https://github.com/docker-library/official-images/blob/master/library/cirros)
|
||||
in the [`docker-library/official-images` GitHub
|
||||
repo](https://github.com/docker-library/official-images).
|
||||
For more information about this image and its history, please see the [relevant manifest file (`library/cirros`)](https://github.com/docker-library/official-images/blob/master/library/cirros) in the [`docker-library/official-images` GitHub repo](https://github.com/docker-library/official-images).
|
||||
|
||||
# What is CirrOS?
|
||||
|
||||
|
|
@ -26,20 +22,12 @@ Support for older versions (down to 1.0) is provided on a best-effort basis.
|
|||
|
||||
## Issues
|
||||
|
||||
If you have any problems with or questions about this image, please contact us
|
||||
through a [GitHub issue](https://github.com/ewindisch/docker-cirros/issues).
|
||||
If you have any problems with or questions about this image, please contact us through a [GitHub issue](https://github.com/ewindisch/docker-cirros/issues).
|
||||
|
||||
You can also reach many of the official image maintainers via the
|
||||
`#docker-library` IRC channel on [Freenode](https://freenode.net).
|
||||
You can also reach many of the official image maintainers via the `#docker-library` IRC channel on [Freenode](https://freenode.net).
|
||||
|
||||
## Contributing
|
||||
|
||||
You are invited to contribute new features, fixes, or updates, large or small;
|
||||
we are always thrilled to receive pull requests, and do our best to process them
|
||||
as fast as we can.
|
||||
You are invited to contribute new features, fixes, or updates, large or small; we are always thrilled to receive pull requests, and do our best to process them as fast as we can.
|
||||
|
||||
Before you start to code, we recommend discussing your plans
|
||||
through a [GitHub issue](https://github.com/ewindisch/docker-cirros/issues), especially for more ambitious
|
||||
contributions. This gives other contributors a chance to point you in the right
|
||||
direction, give you feedback on your design, and help you find out if someone
|
||||
else is working on the same thing.
|
||||
Before you start to code, we recommend discussing your plans through a [GitHub issue](https://github.com/ewindisch/docker-cirros/issues), especially for more ambitious contributions. This gives other contributors a chance to point you in the right direction, give you feedback on your design, and help you find out if someone else is working on the same thing.
|
||||
|
|
|
|||
|
|
@ -1,20 +1,13 @@
|
|||
# Supported tags and respective `Dockerfile` links
|
||||
|
||||
- [`latest`, `lein-2.5.1` (*Dockerfile*)](https://github.com/Quantisan/docker-clojure/blob/5c988033c6510c7d91a5f6c7a91b4f63f8f90768/Dockerfile)
|
||||
- [`lein-2.4.3` (*Dockerfile*)](https://github.com/Quantisan/docker-clojure/blob/30ed1b891ea059a33ca56f04ecf6f467bbbd2362/Dockerfile)
|
||||
- [`latest`, `lein-2.5.1` (*Dockerfile*)](https://github.com/Quantisan/docker-clojure/blob/5c988033c6510c7d91a5f6c7a91b4f63f8f90768/Dockerfile)
|
||||
- [`lein-2.4.3` (*Dockerfile*)](https://github.com/Quantisan/docker-clojure/blob/30ed1b891ea059a33ca56f04ecf6f467bbbd2362/Dockerfile)
|
||||
|
||||
For more information about this image and its history, please see the [relevant
|
||||
manifest file
|
||||
(`library/clojure`)](https://github.com/docker-library/official-images/blob/master/library/clojure)
|
||||
in the [`docker-library/official-images` GitHub
|
||||
repo](https://github.com/docker-library/official-images).
|
||||
For more information about this image and its history, please see the [relevant manifest file (`library/clojure`)](https://github.com/docker-library/official-images/blob/master/library/clojure) in the [`docker-library/official-images` GitHub repo](https://github.com/docker-library/official-images).
|
||||
|
||||
# What is Clojure?
|
||||
|
||||
Clojure is a dialect of the Lisp programming language. It is a general-purpose
|
||||
programming language with an emphasis on functional programming. It runs on the
|
||||
Java Virtual Machine, Common Langauge Runtime, and JavaScript engines. Like
|
||||
other Lisps, Clojure treats code as data and has a macro system.
|
||||
Clojure is a dialect of the Lisp programming language. It is a general-purpose programming language with an emphasis on functional programming. It runs on the Java Virtual Machine, Common Langauge Runtime, and JavaScript engines. Like other Lisps, Clojure treats code as data and has a macro system.
|
||||
|
||||
> [wikipedia.org/wiki/Clojure](http://en.wikipedia.org/wiki/Clojure)
|
||||
|
||||
|
|
@ -24,58 +17,44 @@ other Lisps, Clojure treats code as data and has a macro system.
|
|||
|
||||
## Start a Lein/Clojure instance in your app
|
||||
|
||||
Since the most common way to use Clojure is in conjunction with [Leiningen
|
||||
(`lein`)](http://leiningen.org/), this image assumes that's how you'll be
|
||||
working. The most straightforward way to use this image is to add a `Dockerfile`
|
||||
to an existing Leiningen/Clojure project:
|
||||
Since the most common way to use Clojure is in conjunction with [Leiningen (`lein`)](http://leiningen.org/), this image assumes that's how you'll be working. The most straightforward way to use this image is to add a `Dockerfile` to an existing Leiningen/Clojure project:
|
||||
|
||||
FROM clojure
|
||||
COPY . /usr/src/app
|
||||
WORKDIR /usr/src/app
|
||||
CMD ["lein", "run"]
|
||||
FROM clojure
|
||||
COPY . /usr/src/app
|
||||
WORKDIR /usr/src/app
|
||||
CMD ["lein", "run"]
|
||||
|
||||
Then, run these commands to build and run the image:
|
||||
|
||||
docker build -t my-clojure-app .
|
||||
docker run -it --rm --name my-running-app my-clojure-app
|
||||
docker build -t my-clojure-app .
|
||||
docker run -it --rm --name my-running-app my-clojure-app
|
||||
|
||||
While the above is the most straightforward example of a `Dockerfile`, it does
|
||||
have some drawbacks. The `lein run` command will download your dependencies,
|
||||
compile the project, and then run it. That's a lot of work, all of which you may
|
||||
not want done every time you run the image. To get around this, you can download
|
||||
the dependencies and compile the project ahead of time. This will significantly
|
||||
reduce startup time when you run your image.
|
||||
While the above is the most straightforward example of a `Dockerfile`, it does have some drawbacks. The `lein run` command will download your dependencies, compile the project, and then run it. That's a lot of work, all of which you may not want done every time you run the image. To get around this, you can download the dependencies and compile the project ahead of time. This will significantly reduce startup time when you run your image.
|
||||
|
||||
FROM clojure
|
||||
RUN mkdir -p /usr/src/app
|
||||
WORKDIR /usr/src/app
|
||||
COPY project.clj /usr/src/app/
|
||||
RUN lein deps
|
||||
COPY . /usr/src/app
|
||||
RUN mv "$(lein uberjar | sed -n 's/^Created \(.*standalone\.jar\)/\1/p')" app-standalone.jar
|
||||
CMD ["java", "-jar", "app-standalone.jar"]
|
||||
FROM clojure
|
||||
RUN mkdir -p /usr/src/app
|
||||
WORKDIR /usr/src/app
|
||||
COPY project.clj /usr/src/app/
|
||||
RUN lein deps
|
||||
COPY . /usr/src/app
|
||||
RUN mv "$(lein uberjar | sed -n 's/^Created \(.*standalone\.jar\)/\1/p')" app-standalone.jar
|
||||
CMD ["java", "-jar", "app-standalone.jar"]
|
||||
|
||||
Writing the `Dockerfile` this way will download the dependencies (and cache
|
||||
them, so they are only re-downloaded when the dependencies change) and then
|
||||
compile them into a standalone jar ahead of time rather than each time the image
|
||||
is run.
|
||||
Writing the `Dockerfile` this way will download the dependencies (and cache them, so they are only re-downloaded when the dependencies change) and then compile them into a standalone jar ahead of time rather than each time the image is run.
|
||||
|
||||
You can then build and run the image as above.
|
||||
|
||||
## Compile your Lein/Clojure project into a jar from within the container
|
||||
|
||||
If you have an existing Lein/Clojure project, it's fairly straightforward to
|
||||
compile your project into a jar from a container:
|
||||
If you have an existing Lein/Clojure project, it's fairly straightforward to compile your project into a jar from a container:
|
||||
|
||||
docker run -it --rm -v "$PWD":/usr/src/app -w /usr/src/app clojure lein uberjar
|
||||
docker run -it --rm -v "$PWD":/usr/src/app -w /usr/src/app clojure lein uberjar
|
||||
|
||||
This will build your project into a jar file located in your project's
|
||||
`target/uberjar` directory.
|
||||
This will build your project into a jar file located in your project's `target/uberjar` directory.
|
||||
|
||||
# License
|
||||
|
||||
View [license information](http://clojure.org/license)
|
||||
for the software contained in this image.
|
||||
View [license information](http://clojure.org/license) for the software contained in this image.
|
||||
|
||||
# Supported Docker versions
|
||||
|
||||
|
|
@ -87,20 +66,12 @@ Support for older versions (down to 1.0) is provided on a best-effort basis.
|
|||
|
||||
## Issues
|
||||
|
||||
If you have any problems with or questions about this image, please contact us
|
||||
through a [GitHub issue](https://github.com/Quantisan/docker-clojure/issues).
|
||||
If you have any problems with or questions about this image, please contact us through a [GitHub issue](https://github.com/Quantisan/docker-clojure/issues).
|
||||
|
||||
You can also reach many of the official image maintainers via the
|
||||
`#docker-library` IRC channel on [Freenode](https://freenode.net).
|
||||
You can also reach many of the official image maintainers via the `#docker-library` IRC channel on [Freenode](https://freenode.net).
|
||||
|
||||
## Contributing
|
||||
|
||||
You are invited to contribute new features, fixes, or updates, large or small;
|
||||
we are always thrilled to receive pull requests, and do our best to process them
|
||||
as fast as we can.
|
||||
You are invited to contribute new features, fixes, or updates, large or small; we are always thrilled to receive pull requests, and do our best to process them as fast as we can.
|
||||
|
||||
Before you start to code, we recommend discussing your plans
|
||||
through a [GitHub issue](https://github.com/Quantisan/docker-clojure/issues), especially for more ambitious
|
||||
contributions. This gives other contributors a chance to point you in the right
|
||||
direction, give you feedback on your design, and help you find out if someone
|
||||
else is working on the same thing.
|
||||
Before you start to code, we recommend discussing your plans through a [GitHub issue](https://github.com/Quantisan/docker-clojure/issues), especially for more ambitious contributions. This gives other contributors a chance to point you in the right direction, give you feedback on your design, and help you find out if someone else is working on the same thing.
|
||||
|
|
|
|||
|
|
@ -1,9 +1,6 @@
|
|||
# What is Clojure?
|
||||
|
||||
Clojure is a dialect of the Lisp programming language. It is a general-purpose
|
||||
programming language with an emphasis on functional programming. It runs on the
|
||||
Java Virtual Machine, Common Langauge Runtime, and JavaScript engines. Like
|
||||
other Lisps, Clojure treats code as data and has a macro system.
|
||||
Clojure is a dialect of the Lisp programming language. It is a general-purpose programming language with an emphasis on functional programming. It runs on the Java Virtual Machine, Common Langauge Runtime, and JavaScript engines. Like other Lisps, Clojure treats code as data and has a macro system.
|
||||
|
||||
> [wikipedia.org/wiki/Clojure](http://en.wikipedia.org/wiki/Clojure)
|
||||
|
||||
|
|
@ -13,50 +10,37 @@ other Lisps, Clojure treats code as data and has a macro system.
|
|||
|
||||
## Start a Lein/Clojure instance in your app
|
||||
|
||||
Since the most common way to use Clojure is in conjunction with [Leiningen
|
||||
(`lein`)](http://leiningen.org/), this image assumes that's how you'll be
|
||||
working. The most straightforward way to use this image is to add a `Dockerfile`
|
||||
to an existing Leiningen/Clojure project:
|
||||
Since the most common way to use Clojure is in conjunction with [Leiningen (`lein`)](http://leiningen.org/), this image assumes that's how you'll be working. The most straightforward way to use this image is to add a `Dockerfile` to an existing Leiningen/Clojure project:
|
||||
|
||||
FROM clojure
|
||||
COPY . /usr/src/app
|
||||
WORKDIR /usr/src/app
|
||||
CMD ["lein", "run"]
|
||||
FROM clojure
|
||||
COPY . /usr/src/app
|
||||
WORKDIR /usr/src/app
|
||||
CMD ["lein", "run"]
|
||||
|
||||
Then, run these commands to build and run the image:
|
||||
|
||||
docker build -t my-clojure-app .
|
||||
docker run -it --rm --name my-running-app my-clojure-app
|
||||
docker build -t my-clojure-app .
|
||||
docker run -it --rm --name my-running-app my-clojure-app
|
||||
|
||||
While the above is the most straightforward example of a `Dockerfile`, it does
|
||||
have some drawbacks. The `lein run` command will download your dependencies,
|
||||
compile the project, and then run it. That's a lot of work, all of which you may
|
||||
not want done every time you run the image. To get around this, you can download
|
||||
the dependencies and compile the project ahead of time. This will significantly
|
||||
reduce startup time when you run your image.
|
||||
While the above is the most straightforward example of a `Dockerfile`, it does have some drawbacks. The `lein run` command will download your dependencies, compile the project, and then run it. That's a lot of work, all of which you may not want done every time you run the image. To get around this, you can download the dependencies and compile the project ahead of time. This will significantly reduce startup time when you run your image.
|
||||
|
||||
FROM clojure
|
||||
RUN mkdir -p /usr/src/app
|
||||
WORKDIR /usr/src/app
|
||||
COPY project.clj /usr/src/app/
|
||||
RUN lein deps
|
||||
COPY . /usr/src/app
|
||||
RUN mv "$(lein uberjar | sed -n 's/^Created \(.*standalone\.jar\)/\1/p')" app-standalone.jar
|
||||
CMD ["java", "-jar", "app-standalone.jar"]
|
||||
FROM clojure
|
||||
RUN mkdir -p /usr/src/app
|
||||
WORKDIR /usr/src/app
|
||||
COPY project.clj /usr/src/app/
|
||||
RUN lein deps
|
||||
COPY . /usr/src/app
|
||||
RUN mv "$(lein uberjar | sed -n 's/^Created \(.*standalone\.jar\)/\1/p')" app-standalone.jar
|
||||
CMD ["java", "-jar", "app-standalone.jar"]
|
||||
|
||||
Writing the `Dockerfile` this way will download the dependencies (and cache
|
||||
them, so they are only re-downloaded when the dependencies change) and then
|
||||
compile them into a standalone jar ahead of time rather than each time the image
|
||||
is run.
|
||||
Writing the `Dockerfile` this way will download the dependencies (and cache them, so they are only re-downloaded when the dependencies change) and then compile them into a standalone jar ahead of time rather than each time the image is run.
|
||||
|
||||
You can then build and run the image as above.
|
||||
|
||||
## Compile your Lein/Clojure project into a jar from within the container
|
||||
|
||||
If you have an existing Lein/Clojure project, it's fairly straightforward to
|
||||
compile your project into a jar from a container:
|
||||
If you have an existing Lein/Clojure project, it's fairly straightforward to compile your project into a jar from a container:
|
||||
|
||||
docker run -it --rm -v "$PWD":/usr/src/app -w /usr/src/app clojure lein uberjar
|
||||
docker run -it --rm -v "$PWD":/usr/src/app -w /usr/src/app clojure lein uberjar
|
||||
|
||||
This will build your project into a jar file located in your project's
|
||||
`target/uberjar` directory.
|
||||
This will build your project into a jar file located in your project's `target/uberjar` directory.
|
||||
|
|
|
|||
|
|
@ -1,2 +1 @@
|
|||
View [license information](http://clojure.org/license)
|
||||
for the software contained in this image.
|
||||
View [license information](http://clojure.org/license) for the software contained in this image.
|
||||
|
|
|
|||
108
crate/README.md
108
crate/README.md
|
|
@ -1,19 +1,13 @@
|
|||
# Supported tags and respective `Dockerfile` links
|
||||
|
||||
- [`latest`, `0.46`, `0.46.5` (*Dockerfile*)](https://github.com/crate/docker-crate/blob/0.46.5/Dockerfile)
|
||||
- [`0.45`, `0.45.9` (*Dockerfile*)](https://github.com/crate/docker-crate/blob/0.45.9/Dockerfile)
|
||||
- [`latest`, `0.46`, `0.46.5` (*Dockerfile*)](https://github.com/crate/docker-crate/blob/0.46.5/Dockerfile)
|
||||
- [`0.45`, `0.45.9` (*Dockerfile*)](https://github.com/crate/docker-crate/blob/0.45.9/Dockerfile)
|
||||
|
||||
For more information about this image and its history, please see the [relevant
|
||||
manifest file
|
||||
(`library/crate`)](https://github.com/docker-library/official-images/blob/master/library/crate)
|
||||
in the [`docker-library/official-images` GitHub
|
||||
repo](https://github.com/docker-library/official-images).
|
||||
For more information about this image and its history, please see the [relevant manifest file (`library/crate`)](https://github.com/docker-library/official-images/blob/master/library/crate) in the [`docker-library/official-images` GitHub repo](https://github.com/docker-library/official-images).
|
||||
|
||||
# What is Crate?
|
||||
|
||||
Crate is an Elastic SQL Data Store. Distributed by design, Crate makes
|
||||
centralized database servers obsolete. Realtime non-blocking SQL engine with
|
||||
full blown search. Highly available, massively scalable yet simple to use.
|
||||
Crate is an Elastic SQL Data Store. Distributed by design, Crate makes centralized database servers obsolete. Realtime non-blocking SQL engine with full blown search. Highly available, massively scalable yet simple to use.
|
||||
|
||||
[Crate](https:/crate.io/)
|
||||
|
||||
|
|
@ -21,82 +15,66 @@ full blown search. Highly available, massively scalable yet simple to use.
|
|||
|
||||
## How to use this image
|
||||
|
||||
docker run -d -p 4200:4200 -p 4300:4300 crate:latest
|
||||
docker run -d -p 4200:4200 -p 4300:4300 crate:latest
|
||||
|
||||
### Attach persistent data directory
|
||||
|
||||
docker run -d -p 4200:4200 -p 4300:4300 -v <data-dir>:/data crate
|
||||
docker run -d -p 4200:4200 -p 4300:4300 -v <data-dir>:/data crate
|
||||
|
||||
### Use custom Crate configuration
|
||||
|
||||
docker run -d -p 4200:4200 -p 4300:4300 crate -Des.config=/path/to/crate.yml
|
||||
docker run -d -p 4200:4200 -p 4300:4300 crate -Des.config=/path/to/crate.yml
|
||||
|
||||
Any configuration settings may be specified upon startup using the `-D` option
|
||||
prefix. For example, configuring the cluster name by using system properties
|
||||
will work this way:
|
||||
Any configuration settings may be specified upon startup using the `-D` option prefix. For example, configuring the cluster name by using system properties will work this way:
|
||||
|
||||
docker run -d -p 4200:4200 -p 4300:4300 crate crate -Des.cluster.name=cluster
|
||||
docker run -d -p 4200:4200 -p 4300:4300 crate crate -Des.cluster.name=cluster
|
||||
|
||||
For further configuration options please refer to the
|
||||
[Configuration](https://crate.io/docs/stable/configuration.html) section of the
|
||||
online documentation.
|
||||
For further configuration options please refer to the [Configuration](https://crate.io/docs/stable/configuration.html) section of the online documentation.
|
||||
|
||||
### Environment
|
||||
|
||||
To set environment variables for Crate Data you need to use the `--env` option
|
||||
when starting the docker image.
|
||||
To set environment variables for Crate Data you need to use the `--env` option when starting the docker image.
|
||||
|
||||
For example, setting the heap size:
|
||||
|
||||
docker run -d -p 4200:4200 -p 4300:4300 --env CRATE_HEAP_SIZE=32g crate
|
||||
docker run -d -p 4200:4200 -p 4300:4300 --env CRATE_HEAP_SIZE=32g crate
|
||||
|
||||
## Multicast
|
||||
|
||||
Crate uses multicast for node discovery by default. However, Docker does only
|
||||
support multicast on the same host. This means that nodes that are started on
|
||||
the same host will discover each other automatically, but nodes that are started
|
||||
on different hosts need unicast enabled.
|
||||
Crate uses multicast for node discovery by default. However, Docker does only support multicast on the same host. This means that nodes that are started on the same host will discover each other automatically, but nodes that are started on different hosts need unicast enabled.
|
||||
|
||||
You can enable unicast in your custom `crate.yml`.
|
||||
See also: [Crate Multi Node
|
||||
Setup](https://crate.io/docs/en/latest/best_practice/multi_node_setup.html).
|
||||
You can enable unicast in your custom `crate.yml`. See also: [Crate Multi Node Setup](https://crate.io/docs/en/latest/best_practice/multi_node_setup.html).
|
||||
|
||||
Due to its architecture, Crate publishes the host it runs on for discovery
|
||||
within the cluster. Since the address of the host inside the docker container
|
||||
differs from the actual host the docker image is running on, you need to tell
|
||||
Crate to publish the address of the docker host for discovery.
|
||||
Due to its architecture, Crate publishes the host it runs on for discovery within the cluster. Since the address of the host inside the docker container differs from the actual host the docker image is running on, you need to tell Crate to publish the address of the docker host for discovery.
|
||||
|
||||
docker run -d -p 4200:4200 -p 4300:4300 crate crate -Des.network.publish_host=host1.example.com:
|
||||
docker run -d -p 4200:4200 -p 4300:4300 crate crate -Des.network.publish_host=host1.example.com:
|
||||
|
||||
If you change the transport port from the default `4300` to something else,
|
||||
you also need to pass the publish port to Crate.
|
||||
If you change the transport port from the default `4300` to something else, you also need to pass the publish port to Crate.
|
||||
|
||||
docker run -d -p 4200:4200 -p 4321:4300 crate crate -Des.transport.publish_port=4321
|
||||
docker run -d -p 4200:4200 -p 4321:4300 crate crate -Des.transport.publish_port=4321
|
||||
|
||||
### Example Usage in a Multinode Setup
|
||||
|
||||
HOSTS='crate1.example.com:4300,crate2.example.com:4300,crate3.example.com:4300'
|
||||
HOST=crate1.example.com
|
||||
docker run -d \
|
||||
-p 4200:4200 \
|
||||
-p 4300:4300 \
|
||||
--name node1 \
|
||||
--volume /mnt/data:/data \
|
||||
--env CRATE_HEAP_SIZE=8g \
|
||||
crate:latest \
|
||||
crate -Des.cluster.name=cratecluster \
|
||||
-Des.node.name=crate1 \
|
||||
-Des.transport.publish_port=4300 \
|
||||
-Des.network.publish_host=$HOST \
|
||||
-Des.multicast.enabled=false \
|
||||
-Des.discovery.zen.ping.unicast.hosts=$HOSTS \
|
||||
-Des.discovery.zen.minimum_master_nodes=2
|
||||
HOSTS='crate1.example.com:4300,crate2.example.com:4300,crate3.example.com:4300'
|
||||
HOST=crate1.example.com
|
||||
docker run -d \
|
||||
-p 4200:4200 \
|
||||
-p 4300:4300 \
|
||||
--name node1 \
|
||||
--volume /mnt/data:/data \
|
||||
--env CRATE_HEAP_SIZE=8g \
|
||||
crate:latest \
|
||||
crate -Des.cluster.name=cratecluster \
|
||||
-Des.node.name=crate1 \
|
||||
-Des.transport.publish_port=4300 \
|
||||
-Des.network.publish_host=$HOST \
|
||||
-Des.multicast.enabled=false \
|
||||
-Des.discovery.zen.ping.unicast.hosts=$HOSTS \
|
||||
-Des.discovery.zen.minimum_master_nodes=2
|
||||
|
||||
# License
|
||||
|
||||
View [license
|
||||
information](https://github.com/crate/crate/blob/master/LICENSE.txt) for the
|
||||
software contained in this image.
|
||||
View [license information](https://github.com/crate/crate/blob/master/LICENSE.txt) for the software contained in this image.
|
||||
|
||||
# Supported Docker versions
|
||||
|
||||
|
|
@ -108,20 +86,12 @@ Support for older versions (down to 1.0) is provided on a best-effort basis.
|
|||
|
||||
## Issues
|
||||
|
||||
If you have any problems with, or questions about this image, please contact us
|
||||
through a [GitHub issue](https://github.com/crate/docker-crate/issues).
|
||||
If you have any problems with, or questions about this image, please contact us through a [GitHub issue](https://github.com/crate/docker-crate/issues).
|
||||
|
||||
If you have any questions or suggestions we would be very happy to help you. So,
|
||||
feel free to swing by our IRC channel `#crate` on
|
||||
[Freenode](http://freenode.net).
|
||||
If you have any questions or suggestions we would be very happy to help you. So, feel free to swing by our IRC channel `#crate` on [Freenode](http://freenode.net).
|
||||
|
||||
For further information and official contact please visit
|
||||
[https://crate.io](https://crate.io).
|
||||
For further information and official contact please visit [https://crate.io](https://crate.io).
|
||||
|
||||
## Contributing
|
||||
|
||||
You are very welcome to contribute features or fixes! Before we can accept any
|
||||
pull requests to Crate Data we need you to agree to our
|
||||
[CLA](https://crate.io/community/contribute/). For further information please
|
||||
refer to
|
||||
[CONTRIBUTING.rst](https://github.com/crate/crate/blob/master/CONTRIBUTING.rst).
|
||||
You are very welcome to contribute features or fixes! Before we can accept any pull requests to Crate Data we need you to agree to our [CLA](https://crate.io/community/contribute/). For further information please refer to [CONTRIBUTING.rst](https://github.com/crate/crate/blob/master/CONTRIBUTING.rst).
|
||||
|
|
|
|||
|
|
@ -1,8 +1,6 @@
|
|||
# What is Crate?
|
||||
|
||||
Crate is an Elastic SQL Data Store. Distributed by design, Crate makes
|
||||
centralized database servers obsolete. Realtime non-blocking SQL engine with
|
||||
full blown search. Highly available, massively scalable yet simple to use.
|
||||
Crate is an Elastic SQL Data Store. Distributed by design, Crate makes centralized database servers obsolete. Realtime non-blocking SQL engine with full blown search. Highly available, massively scalable yet simple to use.
|
||||
|
||||
[Crate](https:/crate.io/)
|
||||
|
||||
|
|
@ -10,73 +8,59 @@ full blown search. Highly available, massively scalable yet simple to use.
|
|||
|
||||
## How to use this image
|
||||
|
||||
docker run -d -p 4200:4200 -p 4300:4300 crate:latest
|
||||
docker run -d -p 4200:4200 -p 4300:4300 crate:latest
|
||||
|
||||
### Attach persistent data directory
|
||||
|
||||
docker run -d -p 4200:4200 -p 4300:4300 -v <data-dir>:/data crate
|
||||
docker run -d -p 4200:4200 -p 4300:4300 -v <data-dir>:/data crate
|
||||
|
||||
### Use custom Crate configuration
|
||||
|
||||
docker run -d -p 4200:4200 -p 4300:4300 crate -Des.config=/path/to/crate.yml
|
||||
docker run -d -p 4200:4200 -p 4300:4300 crate -Des.config=/path/to/crate.yml
|
||||
|
||||
Any configuration settings may be specified upon startup using the `-D` option
|
||||
prefix. For example, configuring the cluster name by using system properties
|
||||
will work this way:
|
||||
Any configuration settings may be specified upon startup using the `-D` option prefix. For example, configuring the cluster name by using system properties will work this way:
|
||||
|
||||
docker run -d -p 4200:4200 -p 4300:4300 crate crate -Des.cluster.name=cluster
|
||||
docker run -d -p 4200:4200 -p 4300:4300 crate crate -Des.cluster.name=cluster
|
||||
|
||||
For further configuration options please refer to the
|
||||
[Configuration](https://crate.io/docs/stable/configuration.html) section of the
|
||||
online documentation.
|
||||
For further configuration options please refer to the [Configuration](https://crate.io/docs/stable/configuration.html) section of the online documentation.
|
||||
|
||||
### Environment
|
||||
|
||||
To set environment variables for Crate Data you need to use the `--env` option
|
||||
when starting the docker image.
|
||||
To set environment variables for Crate Data you need to use the `--env` option when starting the docker image.
|
||||
|
||||
For example, setting the heap size:
|
||||
|
||||
docker run -d -p 4200:4200 -p 4300:4300 --env CRATE_HEAP_SIZE=32g crate
|
||||
docker run -d -p 4200:4200 -p 4300:4300 --env CRATE_HEAP_SIZE=32g crate
|
||||
|
||||
## Multicast
|
||||
|
||||
Crate uses multicast for node discovery by default. However, Docker does only
|
||||
support multicast on the same host. This means that nodes that are started on
|
||||
the same host will discover each other automatically, but nodes that are started
|
||||
on different hosts need unicast enabled.
|
||||
Crate uses multicast for node discovery by default. However, Docker does only support multicast on the same host. This means that nodes that are started on the same host will discover each other automatically, but nodes that are started on different hosts need unicast enabled.
|
||||
|
||||
You can enable unicast in your custom `crate.yml`.
|
||||
See also: [Crate Multi Node
|
||||
Setup](https://crate.io/docs/en/latest/best_practice/multi_node_setup.html).
|
||||
You can enable unicast in your custom `crate.yml`. See also: [Crate Multi Node Setup](https://crate.io/docs/en/latest/best_practice/multi_node_setup.html).
|
||||
|
||||
Due to its architecture, Crate publishes the host it runs on for discovery
|
||||
within the cluster. Since the address of the host inside the docker container
|
||||
differs from the actual host the docker image is running on, you need to tell
|
||||
Crate to publish the address of the docker host for discovery.
|
||||
Due to its architecture, Crate publishes the host it runs on for discovery within the cluster. Since the address of the host inside the docker container differs from the actual host the docker image is running on, you need to tell Crate to publish the address of the docker host for discovery.
|
||||
|
||||
docker run -d -p 4200:4200 -p 4300:4300 crate crate -Des.network.publish_host=host1.example.com:
|
||||
docker run -d -p 4200:4200 -p 4300:4300 crate crate -Des.network.publish_host=host1.example.com:
|
||||
|
||||
If you change the transport port from the default `4300` to something else,
|
||||
you also need to pass the publish port to Crate.
|
||||
If you change the transport port from the default `4300` to something else, you also need to pass the publish port to Crate.
|
||||
|
||||
docker run -d -p 4200:4200 -p 4321:4300 crate crate -Des.transport.publish_port=4321
|
||||
docker run -d -p 4200:4200 -p 4321:4300 crate crate -Des.transport.publish_port=4321
|
||||
|
||||
### Example Usage in a Multinode Setup
|
||||
|
||||
HOSTS='crate1.example.com:4300,crate2.example.com:4300,crate3.example.com:4300'
|
||||
HOST=crate1.example.com
|
||||
docker run -d \
|
||||
-p 4200:4200 \
|
||||
-p 4300:4300 \
|
||||
--name node1 \
|
||||
--volume /mnt/data:/data \
|
||||
--env CRATE_HEAP_SIZE=8g \
|
||||
crate:latest \
|
||||
crate -Des.cluster.name=cratecluster \
|
||||
-Des.node.name=crate1 \
|
||||
-Des.transport.publish_port=4300 \
|
||||
-Des.network.publish_host=$HOST \
|
||||
-Des.multicast.enabled=false \
|
||||
-Des.discovery.zen.ping.unicast.hosts=$HOSTS \
|
||||
-Des.discovery.zen.minimum_master_nodes=2
|
||||
HOSTS='crate1.example.com:4300,crate2.example.com:4300,crate3.example.com:4300'
|
||||
HOST=crate1.example.com
|
||||
docker run -d \
|
||||
-p 4200:4200 \
|
||||
-p 4300:4300 \
|
||||
--name node1 \
|
||||
--volume /mnt/data:/data \
|
||||
--env CRATE_HEAP_SIZE=8g \
|
||||
crate:latest \
|
||||
crate -Des.cluster.name=cratecluster \
|
||||
-Des.node.name=crate1 \
|
||||
-Des.transport.publish_port=4300 \
|
||||
-Des.network.publish_host=$HOST \
|
||||
-Des.multicast.enabled=false \
|
||||
-Des.discovery.zen.ping.unicast.hosts=$HOSTS \
|
||||
-Des.discovery.zen.minimum_master_nodes=2
|
||||
|
|
|
|||
|
|
@ -1,3 +1 @@
|
|||
View [license
|
||||
information](https://github.com/crate/crate/blob/master/LICENSE.txt) for the
|
||||
software contained in this image.
|
||||
View [license information](https://github.com/crate/crate/blob/master/LICENSE.txt) for the software contained in this image.
|
||||
|
|
|
|||
|
|
@ -1,19 +1,11 @@
|
|||
## Issues
|
||||
|
||||
If you have any problems with, or questions about this image, please contact us
|
||||
through a [GitHub issue](https://github.com/crate/docker-crate/issues).
|
||||
If you have any problems with, or questions about this image, please contact us through a [GitHub issue](https://github.com/crate/docker-crate/issues).
|
||||
|
||||
If you have any questions or suggestions we would be very happy to help you. So,
|
||||
feel free to swing by our IRC channel `#crate` on
|
||||
[Freenode](http://freenode.net).
|
||||
If you have any questions or suggestions we would be very happy to help you. So, feel free to swing by our IRC channel `#crate` on [Freenode](http://freenode.net).
|
||||
|
||||
For further information and official contact please visit
|
||||
[https://crate.io](https://crate.io).
|
||||
For further information and official contact please visit [https://crate.io](https://crate.io).
|
||||
|
||||
## Contributing
|
||||
|
||||
You are very welcome to contribute features or fixes! Before we can accept any
|
||||
pull requests to Crate Data we need you to agree to our
|
||||
[CLA](https://crate.io/community/contribute/). For further information please
|
||||
refer to
|
||||
[CONTRIBUTING.rst](https://github.com/crate/crate/blob/master/CONTRIBUTING.rst).
|
||||
You are very welcome to contribute features or fixes! Before we can accept any pull requests to Crate Data we need you to agree to our [CLA](https://crate.io/community/contribute/). For further information please refer to [CONTRIBUTING.rst](https://github.com/crate/crate/blob/master/CONTRIBUTING.rst).
|
||||
|
|
|
|||
|
|
@ -1,49 +1,24 @@
|
|||
# Supported tags and respective `Dockerfile` links
|
||||
|
||||
- [`latest`, `3.1` (*Dockerfile*)](https://github.com/therealprologic/docker-crux/blob/46c53a82b42907e3954c792adb2f47e436b537ba/Dockerfile)
|
||||
- [`latest`, `3.1` (*Dockerfile*)](https://github.com/therealprologic/docker-crux/blob/46c53a82b42907e3954c792adb2f47e436b537ba/Dockerfile)
|
||||
|
||||
For more information about this image and its history, please see the [relevant
|
||||
manifest file
|
||||
(`library/crux`)](https://github.com/docker-library/official-images/blob/master/library/crux)
|
||||
in the [`docker-library/official-images` GitHub
|
||||
repo](https://github.com/docker-library/official-images).
|
||||
For more information about this image and its history, please see the [relevant manifest file (`library/crux`)](https://github.com/docker-library/official-images/blob/master/library/crux) in the [`docker-library/official-images` GitHub repo](https://github.com/docker-library/official-images).
|
||||
|
||||
# What is CRUX?
|
||||
|
||||
CRUX is a lightweight Linux distribution for the x86-64 architecture targeted at
|
||||
experienced Linux users. The primary focus of this distribution is "keep it
|
||||
simple", which it reflects in a simple tar.gz-based package system, BSD-style
|
||||
initscripts, and a relatively small collection of trimmed packages. The
|
||||
secondary focus is utilization of new Linux features and recent tools and
|
||||
libraries. CRUX also has a ports system which makes it easy to install and
|
||||
upgrade applications.
|
||||
CRUX is a lightweight Linux distribution for the x86-64 architecture targeted at experienced Linux users. The primary focus of this distribution is "keep it simple", which it reflects in a simple tar.gz-based package system, BSD-style initscripts, and a relatively small collection of trimmed packages. The secondary focus is utilization of new Linux features and recent tools and libraries. CRUX also has a ports system which makes it easy to install and upgrade applications.
|
||||
|
||||
# Why use CRUX?
|
||||
|
||||
There are many Linux distributions out there these days, so what makes CRUX any
|
||||
better than the others? The choice of distribution is a matter of taste, really.
|
||||
Here are a few hints about the tastes and goals of the people behind CRUX. CRUX
|
||||
is made with simplicity in mind from beginning to end.
|
||||
There are many Linux distributions out there these days, so what makes CRUX any better than the others? The choice of distribution is a matter of taste, really. Here are a few hints about the tastes and goals of the people behind CRUX. CRUX is made with simplicity in mind from beginning to end.
|
||||
|
||||
Making it easy to create new and update old packages is essential; updating a
|
||||
package in CRUX is often just a matter of typing `pkgmk -d -u`. The usage of
|
||||
ports helps keep your packages up-to-date; not the latest bleeding-edge-alpha
|
||||
version, but the latest stable version. Other features include creating packages
|
||||
optimized for your processor, eg. by compiling with `-march=x86-64`, and
|
||||
avoiding cluttering the filesystem with files you'll never use, eg.
|
||||
`/usr/doc/*`, etc. If you need more information about a specific program, other
|
||||
than information found in the man-page, Google usually knows all about it.
|
||||
Making it easy to create new and update old packages is essential; updating a package in CRUX is often just a matter of typing `pkgmk -d -u`. The usage of ports helps keep your packages up-to-date; not the latest bleeding-edge-alpha version, but the latest stable version. Other features include creating packages optimized for your processor, eg. by compiling with `-march=x86-64`, and avoiding cluttering the filesystem with files you'll never use, eg. `/usr/doc/*`, etc. If you need more information about a specific program, other than information found in the man-page, Google usually knows all about it.
|
||||
|
||||
Finally, it strives to use new features as they become available, as long as
|
||||
they are consistent with the rest of the goals. In short, CRUX might suit you
|
||||
very well if you are:
|
||||
Finally, it strives to use new features as they become available, as long as they are consistent with the rest of the goals. In short, CRUX might suit you very well if you are:
|
||||
|
||||
* A somewhat experienced Linux user who wants a clean and solid Linux
|
||||
distribution as the foundation of your installation.
|
||||
* A person who prefers editing configuration files with an editor to using a
|
||||
GUI.
|
||||
* Someone who does not hesitate to download and compile programs from the
|
||||
source.
|
||||
- A somewhat experienced Linux user who wants a clean and solid Linux distribution as the foundation of your installation.
|
||||
- A person who prefers editing configuration files with an editor to using a GUI.
|
||||
- Someone who does not hesitate to download and compile programs from the source.
|
||||
|
||||
# Supported Docker versions
|
||||
|
||||
|
|
@ -55,20 +30,12 @@ Support for older versions (down to 1.0) is provided on a best-effort basis.
|
|||
|
||||
## Issues
|
||||
|
||||
If you have any problems with or questions about this image, please contact us
|
||||
through a [GitHub issue](https://github.com/therealprologic/docker-crux/issues).
|
||||
If you have any problems with or questions about this image, please contact us through a [GitHub issue](https://github.com/therealprologic/docker-crux/issues).
|
||||
|
||||
You can also reach many of the official image maintainers via the
|
||||
`#docker-library` IRC channel on [Freenode](https://freenode.net).
|
||||
You can also reach many of the official image maintainers via the `#docker-library` IRC channel on [Freenode](https://freenode.net).
|
||||
|
||||
## Contributing
|
||||
|
||||
You are invited to contribute new features, fixes, or updates, large or small;
|
||||
we are always thrilled to receive pull requests, and do our best to process them
|
||||
as fast as we can.
|
||||
You are invited to contribute new features, fixes, or updates, large or small; we are always thrilled to receive pull requests, and do our best to process them as fast as we can.
|
||||
|
||||
Before you start to code, we recommend discussing your plans
|
||||
through a [GitHub issue](https://github.com/therealprologic/docker-crux/issues), especially for more ambitious
|
||||
contributions. This gives other contributors a chance to point you in the right
|
||||
direction, give you feedback on your design, and help you find out if someone
|
||||
else is working on the same thing.
|
||||
Before you start to code, we recommend discussing your plans through a [GitHub issue](https://github.com/therealprologic/docker-crux/issues), especially for more ambitious contributions. This gives other contributors a chance to point you in the right direction, give you feedback on your design, and help you find out if someone else is working on the same thing.
|
||||
|
|
|
|||
|
|
@ -1,36 +1,15 @@
|
|||
# What is CRUX?
|
||||
|
||||
CRUX is a lightweight Linux distribution for the x86-64 architecture targeted at
|
||||
experienced Linux users. The primary focus of this distribution is "keep it
|
||||
simple", which it reflects in a simple tar.gz-based package system, BSD-style
|
||||
initscripts, and a relatively small collection of trimmed packages. The
|
||||
secondary focus is utilization of new Linux features and recent tools and
|
||||
libraries. CRUX also has a ports system which makes it easy to install and
|
||||
upgrade applications.
|
||||
CRUX is a lightweight Linux distribution for the x86-64 architecture targeted at experienced Linux users. The primary focus of this distribution is "keep it simple", which it reflects in a simple tar.gz-based package system, BSD-style initscripts, and a relatively small collection of trimmed packages. The secondary focus is utilization of new Linux features and recent tools and libraries. CRUX also has a ports system which makes it easy to install and upgrade applications.
|
||||
|
||||
# Why use CRUX?
|
||||
|
||||
There are many Linux distributions out there these days, so what makes CRUX any
|
||||
better than the others? The choice of distribution is a matter of taste, really.
|
||||
Here are a few hints about the tastes and goals of the people behind CRUX. CRUX
|
||||
is made with simplicity in mind from beginning to end.
|
||||
There are many Linux distributions out there these days, so what makes CRUX any better than the others? The choice of distribution is a matter of taste, really. Here are a few hints about the tastes and goals of the people behind CRUX. CRUX is made with simplicity in mind from beginning to end.
|
||||
|
||||
Making it easy to create new and update old packages is essential; updating a
|
||||
package in CRUX is often just a matter of typing `pkgmk -d -u`. The usage of
|
||||
ports helps keep your packages up-to-date; not the latest bleeding-edge-alpha
|
||||
version, but the latest stable version. Other features include creating packages
|
||||
optimized for your processor, eg. by compiling with `-march=x86-64`, and
|
||||
avoiding cluttering the filesystem with files you'll never use, eg.
|
||||
`/usr/doc/*`, etc. If you need more information about a specific program, other
|
||||
than information found in the man-page, Google usually knows all about it.
|
||||
Making it easy to create new and update old packages is essential; updating a package in CRUX is often just a matter of typing `pkgmk -d -u`. The usage of ports helps keep your packages up-to-date; not the latest bleeding-edge-alpha version, but the latest stable version. Other features include creating packages optimized for your processor, eg. by compiling with `-march=x86-64`, and avoiding cluttering the filesystem with files you'll never use, eg. `/usr/doc/*`, etc. If you need more information about a specific program, other than information found in the man-page, Google usually knows all about it.
|
||||
|
||||
Finally, it strives to use new features as they become available, as long as
|
||||
they are consistent with the rest of the goals. In short, CRUX might suit you
|
||||
very well if you are:
|
||||
Finally, it strives to use new features as they become available, as long as they are consistent with the rest of the goals. In short, CRUX might suit you very well if you are:
|
||||
|
||||
* A somewhat experienced Linux user who wants a clean and solid Linux
|
||||
distribution as the foundation of your installation.
|
||||
* A person who prefers editing configuration files with an editor to using a
|
||||
GUI.
|
||||
* Someone who does not hesitate to download and compile programs from the
|
||||
source.
|
||||
- A somewhat experienced Linux user who wants a clean and solid Linux distribution as the foundation of your installation.
|
||||
- A person who prefers editing configuration files with an editor to using a GUI.
|
||||
- Someone who does not hesitate to download and compile programs from the source.
|
||||
|
|
|
|||
|
|
@ -1,29 +1,21 @@
|
|||
# Supported tags and respective `Dockerfile` links
|
||||
|
||||
- [`8.0`, `8`, `jessie` (*jessie/Dockerfile*)](https://github.com/tianon/docker-brew-debian/blob/b6b91ab925802aff7b832127c278aba23d88d3d1/jessie/Dockerfile)
|
||||
- [`oldstable` (*oldstable/Dockerfile*)](https://github.com/tianon/docker-brew-debian/blob/1d9a53a1df978176649f87b064a006cfda1480f1/oldstable/Dockerfile)
|
||||
- [`sid` (*sid/Dockerfile*)](https://github.com/tianon/docker-brew-debian/blob/b6b91ab925802aff7b832127c278aba23d88d3d1/sid/Dockerfile)
|
||||
- [`6.0.10`, `6.0`, `6`, `squeeze` (*squeeze/Dockerfile*)](https://github.com/tianon/docker-brew-debian/blob/1d9a53a1df978176649f87b064a006cfda1480f1/squeeze/Dockerfile)
|
||||
- [`stable` (*stable/Dockerfile*)](https://github.com/tianon/docker-brew-debian/blob/b6b91ab925802aff7b832127c278aba23d88d3d1/stable/Dockerfile)
|
||||
- [`testing` (*testing/Dockerfile*)](https://github.com/tianon/docker-brew-debian/blob/b6b91ab925802aff7b832127c278aba23d88d3d1/testing/Dockerfile)
|
||||
- [`unstable` (*unstable/Dockerfile*)](https://github.com/tianon/docker-brew-debian/blob/b6b91ab925802aff7b832127c278aba23d88d3d1/unstable/Dockerfile)
|
||||
- [`7.8`, `7`, `wheezy`, `latest` (*wheezy/Dockerfile*)](https://github.com/tianon/docker-brew-debian/blob/b6b91ab925802aff7b832127c278aba23d88d3d1/wheezy/Dockerfile)
|
||||
- [`rc-buggy` (*debian/rc-buggy/Dockerfile*)](https://github.com/tianon/dockerfiles/blob/90d86ad63c4a06b7d04d14ad830381b876183b3c/debian/rc-buggy/Dockerfile)
|
||||
- [`experimental` (*debian/experimental/Dockerfile*)](https://github.com/tianon/dockerfiles/blob/90d86ad63c4a06b7d04d14ad830381b876183b3c/debian/experimental/Dockerfile)
|
||||
- [`8.0`, `8`, `jessie` (*jessie/Dockerfile*)](https://github.com/tianon/docker-brew-debian/blob/b6b91ab925802aff7b832127c278aba23d88d3d1/jessie/Dockerfile)
|
||||
- [`oldstable` (*oldstable/Dockerfile*)](https://github.com/tianon/docker-brew-debian/blob/1d9a53a1df978176649f87b064a006cfda1480f1/oldstable/Dockerfile)
|
||||
- [`sid` (*sid/Dockerfile*)](https://github.com/tianon/docker-brew-debian/blob/b6b91ab925802aff7b832127c278aba23d88d3d1/sid/Dockerfile)
|
||||
- [`6.0.10`, `6.0`, `6`, `squeeze` (*squeeze/Dockerfile*)](https://github.com/tianon/docker-brew-debian/blob/1d9a53a1df978176649f87b064a006cfda1480f1/squeeze/Dockerfile)
|
||||
- [`stable` (*stable/Dockerfile*)](https://github.com/tianon/docker-brew-debian/blob/b6b91ab925802aff7b832127c278aba23d88d3d1/stable/Dockerfile)
|
||||
- [`testing` (*testing/Dockerfile*)](https://github.com/tianon/docker-brew-debian/blob/b6b91ab925802aff7b832127c278aba23d88d3d1/testing/Dockerfile)
|
||||
- [`unstable` (*unstable/Dockerfile*)](https://github.com/tianon/docker-brew-debian/blob/b6b91ab925802aff7b832127c278aba23d88d3d1/unstable/Dockerfile)
|
||||
- [`7.8`, `7`, `wheezy`, `latest` (*wheezy/Dockerfile*)](https://github.com/tianon/docker-brew-debian/blob/b6b91ab925802aff7b832127c278aba23d88d3d1/wheezy/Dockerfile)
|
||||
- [`rc-buggy` (*debian/rc-buggy/Dockerfile*)](https://github.com/tianon/dockerfiles/blob/90d86ad63c4a06b7d04d14ad830381b876183b3c/debian/rc-buggy/Dockerfile)
|
||||
- [`experimental` (*debian/experimental/Dockerfile*)](https://github.com/tianon/dockerfiles/blob/90d86ad63c4a06b7d04d14ad830381b876183b3c/debian/experimental/Dockerfile)
|
||||
|
||||
For more information about this image and its history, please see the [relevant
|
||||
manifest file
|
||||
(`library/debian`)](https://github.com/docker-library/official-images/blob/master/library/debian)
|
||||
in the [`docker-library/official-images` GitHub
|
||||
repo](https://github.com/docker-library/official-images).
|
||||
For more information about this image and its history, please see the [relevant manifest file (`library/debian`)](https://github.com/docker-library/official-images/blob/master/library/debian) in the [`docker-library/official-images` GitHub repo](https://github.com/docker-library/official-images).
|
||||
|
||||
# What is Debian?
|
||||
|
||||
Debian is an operating system which is composed primarily of free and
|
||||
open-source software, most of which is under the GNU General Public License, and
|
||||
developed by a group of individuals known as the Debian project. Debian is one
|
||||
of the most popular Linux distributions for personal computers and network
|
||||
servers, and has been used as a base for several other Linux distributions.
|
||||
Debian is an operating system which is composed primarily of free and open-source software, most of which is under the GNU General Public License, and developed by a group of individuals known as the Debian project. Debian is one of the most popular Linux distributions for personal computers and network servers, and has been used as a base for several other Linux distributions.
|
||||
|
||||
> [wikipedia.org/wiki/Debian](https://en.wikipedia.org/wiki/Debian)
|
||||
|
||||
|
|
@ -31,25 +23,19 @@ servers, and has been used as a base for several other Linux distributions.
|
|||
|
||||
# About this image
|
||||
|
||||
The `debian:latest` tag will always point the latest stable release (which is,
|
||||
at the time of this writing, `debian:wheezy`). Stable releases are also tagged
|
||||
with their version (ie, `debian:wheezy` is currently also the same as
|
||||
`debian:7.4`).
|
||||
The `debian:latest` tag will always point the latest stable release (which is, at the time of this writing, `debian:wheezy`). Stable releases are also tagged with their version (ie, `debian:wheezy` is currently also the same as `debian:7.4`).
|
||||
|
||||
The rolling tags (`debian:stable`, `debian:testing`, etc) use the rolling suite
|
||||
names in their `/etc/apt/sources.list` file (ie, `deb
|
||||
The rolling tags (`debian:stable`, `debian:testing`, etc) use the rolling suite names in their `/etc/apt/sources.list` file (ie, `deb
|
||||
http://http.debian.net/debian testing main`).
|
||||
|
||||
## sources.list
|
||||
|
||||
The mirror of choice for these images is
|
||||
[http.debian.net](http://http.debian.net) so that it's as close to optimal for
|
||||
everyone as possible, regardless of location.
|
||||
The mirror of choice for these images is [http.debian.net](http://http.debian.net) so that it's as close to optimal for everyone as possible, regardless of location.
|
||||
|
||||
$ docker run debian:wheezy cat /etc/apt/sources.list
|
||||
deb http://http.debian.net/debian wheezy main
|
||||
deb http://http.debian.net/debian wheezy-updates main
|
||||
deb http://security.debian.org/ wheezy/updates main
|
||||
$ docker run debian:wheezy cat /etc/apt/sources.list
|
||||
deb http://http.debian.net/debian wheezy main
|
||||
deb http://http.debian.net/debian wheezy-updates main
|
||||
deb http://security.debian.org/ wheezy/updates main
|
||||
|
||||
# Supported Docker versions
|
||||
|
||||
|
|
@ -61,20 +47,12 @@ Support for older versions (down to 1.0) is provided on a best-effort basis.
|
|||
|
||||
## Issues
|
||||
|
||||
If you have any problems with or questions about this image, please contact us
|
||||
through a [GitHub issue](https://github.com/tianon/docker-brew-debian/issues).
|
||||
If you have any problems with or questions about this image, please contact us through a [GitHub issue](https://github.com/tianon/docker-brew-debian/issues).
|
||||
|
||||
You can also reach many of the official image maintainers via the
|
||||
`#docker-library` IRC channel on [Freenode](https://freenode.net).
|
||||
You can also reach many of the official image maintainers via the `#docker-library` IRC channel on [Freenode](https://freenode.net).
|
||||
|
||||
## Contributing
|
||||
|
||||
You are invited to contribute new features, fixes, or updates, large or small;
|
||||
we are always thrilled to receive pull requests, and do our best to process them
|
||||
as fast as we can.
|
||||
You are invited to contribute new features, fixes, or updates, large or small; we are always thrilled to receive pull requests, and do our best to process them as fast as we can.
|
||||
|
||||
Before you start to code, we recommend discussing your plans
|
||||
through a [GitHub issue](https://github.com/tianon/docker-brew-debian/issues), especially for more ambitious
|
||||
contributions. This gives other contributors a chance to point you in the right
|
||||
direction, give you feedback on your design, and help you find out if someone
|
||||
else is working on the same thing.
|
||||
Before you start to code, we recommend discussing your plans through a [GitHub issue](https://github.com/tianon/docker-brew-debian/issues), especially for more ambitious contributions. This gives other contributors a chance to point you in the right direction, give you feedback on your design, and help you find out if someone else is working on the same thing.
|
||||
|
|
|
|||
|
|
@ -1,10 +1,6 @@
|
|||
# What is Debian?
|
||||
|
||||
Debian is an operating system which is composed primarily of free and
|
||||
open-source software, most of which is under the GNU General Public License, and
|
||||
developed by a group of individuals known as the Debian project. Debian is one
|
||||
of the most popular Linux distributions for personal computers and network
|
||||
servers, and has been used as a base for several other Linux distributions.
|
||||
Debian is an operating system which is composed primarily of free and open-source software, most of which is under the GNU General Public License, and developed by a group of individuals known as the Debian project. Debian is one of the most popular Linux distributions for personal computers and network servers, and has been used as a base for several other Linux distributions.
|
||||
|
||||
> [wikipedia.org/wiki/Debian](https://en.wikipedia.org/wiki/Debian)
|
||||
|
||||
|
|
@ -12,22 +8,16 @@ servers, and has been used as a base for several other Linux distributions.
|
|||
|
||||
# About this image
|
||||
|
||||
The `debian:latest` tag will always point the latest stable release (which is,
|
||||
at the time of this writing, `debian:wheezy`). Stable releases are also tagged
|
||||
with their version (ie, `debian:wheezy` is currently also the same as
|
||||
`debian:7.4`).
|
||||
The `debian:latest` tag will always point the latest stable release (which is, at the time of this writing, `debian:wheezy`). Stable releases are also tagged with their version (ie, `debian:wheezy` is currently also the same as `debian:7.4`).
|
||||
|
||||
The rolling tags (`debian:stable`, `debian:testing`, etc) use the rolling suite
|
||||
names in their `/etc/apt/sources.list` file (ie, `deb
|
||||
The rolling tags (`debian:stable`, `debian:testing`, etc) use the rolling suite names in their `/etc/apt/sources.list` file (ie, `deb
|
||||
http://http.debian.net/debian testing main`).
|
||||
|
||||
## sources.list
|
||||
|
||||
The mirror of choice for these images is
|
||||
[http.debian.net](http://http.debian.net) so that it's as close to optimal for
|
||||
everyone as possible, regardless of location.
|
||||
The mirror of choice for these images is [http.debian.net](http://http.debian.net) so that it's as close to optimal for everyone as possible, regardless of location.
|
||||
|
||||
$ docker run debian:wheezy cat /etc/apt/sources.list
|
||||
deb http://http.debian.net/debian wheezy main
|
||||
deb http://http.debian.net/debian wheezy-updates main
|
||||
deb http://security.debian.org/ wheezy/updates main
|
||||
$ docker run debian:wheezy cat /etc/apt/sources.list
|
||||
deb http://http.debian.net/debian wheezy main
|
||||
deb http://http.debian.net/debian wheezy-updates main
|
||||
deb http://security.debian.org/ wheezy/updates main
|
||||
|
|
|
|||
|
|
@ -1,22 +1,15 @@
|
|||
# Supported tags and respective `Dockerfile` links
|
||||
|
||||
- [`1.7.4-python2`, `1.7-python2`, `1-python2`, `python2` (*2.7/Dockerfile*)](https://github.com/docker-library/django/blob/982093f2ab178efc3a7ba9da051a8a7b6a142904/2.7/Dockerfile)
|
||||
- [`python2-onbuild` (*2.7/onbuild/Dockerfile*)](https://github.com/docker-library/django/blob/e9721656ef7a246e6edb95b401d324dd2c6e310a/2.7/onbuild/Dockerfile)
|
||||
- [`1.7.4-python3`, `1.7.4`, `1.7-python3`, `1.7`, `1-python3`, `1`, `python3`, `latest` (*3.4/Dockerfile*)](https://github.com/docker-library/django/blob/982093f2ab178efc3a7ba9da051a8a7b6a142904/3.4/Dockerfile)
|
||||
- [`python3-onbuild`, `onbuild` (*3.4/onbuild/Dockerfile*)](https://github.com/docker-library/django/blob/e9721656ef7a246e6edb95b401d324dd2c6e310a/3.4/onbuild/Dockerfile)
|
||||
- [`1.7.4-python2`, `1.7-python2`, `1-python2`, `python2` (*2.7/Dockerfile*)](https://github.com/docker-library/django/blob/982093f2ab178efc3a7ba9da051a8a7b6a142904/2.7/Dockerfile)
|
||||
- [`python2-onbuild` (*2.7/onbuild/Dockerfile*)](https://github.com/docker-library/django/blob/e9721656ef7a246e6edb95b401d324dd2c6e310a/2.7/onbuild/Dockerfile)
|
||||
- [`1.7.4-python3`, `1.7.4`, `1.7-python3`, `1.7`, `1-python3`, `1`, `python3`, `latest` (*3.4/Dockerfile*)](https://github.com/docker-library/django/blob/982093f2ab178efc3a7ba9da051a8a7b6a142904/3.4/Dockerfile)
|
||||
- [`python3-onbuild`, `onbuild` (*3.4/onbuild/Dockerfile*)](https://github.com/docker-library/django/blob/e9721656ef7a246e6edb95b401d324dd2c6e310a/3.4/onbuild/Dockerfile)
|
||||
|
||||
For more information about this image and its history, please see the [relevant
|
||||
manifest file
|
||||
(`library/django`)](https://github.com/docker-library/official-images/blob/master/library/django)
|
||||
in the [`docker-library/official-images` GitHub
|
||||
repo](https://github.com/docker-library/official-images).
|
||||
For more information about this image and its history, please see the [relevant manifest file (`library/django`)](https://github.com/docker-library/official-images/blob/master/library/django) in the [`docker-library/official-images` GitHub repo](https://github.com/docker-library/official-images).
|
||||
|
||||
# What is Django?
|
||||
|
||||
Django is a free and open source web application framework, written in Python,
|
||||
which follows the model-view-controller architectural pattern. Django's primary
|
||||
goal is to ease the creation of complex, database-driven websites with an
|
||||
emphasis on reusability and "pluggability" of components.
|
||||
Django is a free and open source web application framework, written in Python, which follows the model-view-controller architectural pattern. Django's primary goal is to ease the creation of complex, database-driven websites with an emphasis on reusability and "pluggability" of components.
|
||||
|
||||
> [wikipedia.org/wiki/Django_(web_framework)](https://en.wikipedia.org/wiki/Django_%28web_framework%29)
|
||||
|
||||
|
|
@ -26,45 +19,38 @@ emphasis on reusability and "pluggability" of components.
|
|||
|
||||
## Create a `Dockerfile` in your Django app project
|
||||
|
||||
FROM django:onbuild
|
||||
FROM django:onbuild
|
||||
|
||||
Put this file in the root of your app, next to the `requirements.txt`.
|
||||
|
||||
This image includes multiple `ONBUILD` triggers which should cover most
|
||||
applications. The build will `COPY . /usr/src/app`, `RUN pip install`,
|
||||
`EXPOSE 8000`, and set the default command to `python manage.py runserver`.
|
||||
This image includes multiple `ONBUILD` triggers which should cover most applications. The build will `COPY . /usr/src/app`, `RUN pip install`, `EXPOSE 8000`, and set the default command to `python manage.py runserver`.
|
||||
|
||||
You can then build and run the Docker image:
|
||||
|
||||
docker build -t my-django-app .
|
||||
docker run --name some-django-app -d my-django-app
|
||||
docker build -t my-django-app .
|
||||
docker run --name some-django-app -d my-django-app
|
||||
|
||||
You can test it by visiting `http://container-ip:8000` in a browser or, if you
|
||||
need access outside the host, on `http://localhost:8000` with the following command:
|
||||
You can test it by visiting `http://container-ip:8000` in a browser or, if you need access outside the host, on `http://localhost:8000` with the following command:
|
||||
|
||||
docker run --name some-django-app -p 8000:8000 -d my-django-app
|
||||
docker run --name some-django-app -p 8000:8000 -d my-django-app
|
||||
|
||||
## Without a `Dockerfile`
|
||||
|
||||
Of course, if you don't want to take advantage of magical and convenient
|
||||
`ONBUILD` triggers, you can always just use `docker run` directly to avoid
|
||||
having to add a `Dockerfile` to your project.
|
||||
Of course, if you don't want to take advantage of magical and convenient `ONBUILD` triggers, you can always just use `docker run` directly to avoid having to add a `Dockerfile` to your project.
|
||||
|
||||
docker run --name some-django-app -v "$PWD":/usr/src/app -w /usr/src/app -p 8000:8000 -d django bash -c "pip install -r requirements.txt && python manage.py runserver 0.0.0.0:8000"
|
||||
docker run --name some-django-app -v "$PWD":/usr/src/app -w /usr/src/app -p 8000:8000 -d django bash -c "pip install -r requirements.txt && python manage.py runserver 0.0.0.0:8000"
|
||||
|
||||
## Bootstrap a new Django Application
|
||||
|
||||
If you want to generate the scaffolding for a new Django project, you can do the
|
||||
following:
|
||||
If you want to generate the scaffolding for a new Django project, you can do the following:
|
||||
|
||||
docker run -it --rm --user "$(id -u):$(id -g)" -v "$PWD":/usr/src/app -w /usr/src/app django django-admin.py startproject mysite
|
||||
docker run -it --rm --user "$(id -u):$(id -g)" -v "$PWD":/usr/src/app -w /usr/src/app django django-admin.py startproject mysite
|
||||
|
||||
This will create a sub-directory named `mysite` inside your current directory.
|
||||
|
||||
# License
|
||||
|
||||
View [license information](https://github.com/django/django/blob/master/LICENSE)
|
||||
for the software contained in this image.
|
||||
View [license information](https://github.com/django/django/blob/master/LICENSE) for the software contained in this image.
|
||||
|
||||
# Supported Docker versions
|
||||
|
||||
|
|
@ -76,20 +62,12 @@ Support for older versions (down to 1.0) is provided on a best-effort basis.
|
|||
|
||||
## Issues
|
||||
|
||||
If you have any problems with or questions about this image, please contact us
|
||||
through a [GitHub issue](https://github.com/docker-library/django/issues).
|
||||
If you have any problems with or questions about this image, please contact us through a [GitHub issue](https://github.com/docker-library/django/issues).
|
||||
|
||||
You can also reach many of the official image maintainers via the
|
||||
`#docker-library` IRC channel on [Freenode](https://freenode.net).
|
||||
You can also reach many of the official image maintainers via the `#docker-library` IRC channel on [Freenode](https://freenode.net).
|
||||
|
||||
## Contributing
|
||||
|
||||
You are invited to contribute new features, fixes, or updates, large or small;
|
||||
we are always thrilled to receive pull requests, and do our best to process them
|
||||
as fast as we can.
|
||||
You are invited to contribute new features, fixes, or updates, large or small; we are always thrilled to receive pull requests, and do our best to process them as fast as we can.
|
||||
|
||||
Before you start to code, we recommend discussing your plans
|
||||
through a [GitHub issue](https://github.com/docker-library/django/issues), especially for more ambitious
|
||||
contributions. This gives other contributors a chance to point you in the right
|
||||
direction, give you feedback on your design, and help you find out if someone
|
||||
else is working on the same thing.
|
||||
Before you start to code, we recommend discussing your plans through a [GitHub issue](https://github.com/docker-library/django/issues), especially for more ambitious contributions. This gives other contributors a chance to point you in the right direction, give you feedback on your design, and help you find out if someone else is working on the same thing.
|
||||
|
|
|
|||
|
|
@ -1,9 +1,6 @@
|
|||
# What is Django?
|
||||
|
||||
Django is a free and open source web application framework, written in Python,
|
||||
which follows the model-view-controller architectural pattern. Django's primary
|
||||
goal is to ease the creation of complex, database-driven websites with an
|
||||
emphasis on reusability and "pluggability" of components.
|
||||
Django is a free and open source web application framework, written in Python, which follows the model-view-controller architectural pattern. Django's primary goal is to ease the creation of complex, database-driven websites with an emphasis on reusability and "pluggability" of components.
|
||||
|
||||
> [wikipedia.org/wiki/Django_(web_framework)](https://en.wikipedia.org/wiki/Django_%28web_framework%29)
|
||||
|
||||
|
|
@ -13,37 +10,31 @@ emphasis on reusability and "pluggability" of components.
|
|||
|
||||
## Create a `Dockerfile` in your Django app project
|
||||
|
||||
FROM django:onbuild
|
||||
FROM django:onbuild
|
||||
|
||||
Put this file in the root of your app, next to the `requirements.txt`.
|
||||
|
||||
This image includes multiple `ONBUILD` triggers which should cover most
|
||||
applications. The build will `COPY . /usr/src/app`, `RUN pip install`,
|
||||
`EXPOSE 8000`, and set the default command to `python manage.py runserver`.
|
||||
This image includes multiple `ONBUILD` triggers which should cover most applications. The build will `COPY . /usr/src/app`, `RUN pip install`, `EXPOSE 8000`, and set the default command to `python manage.py runserver`.
|
||||
|
||||
You can then build and run the Docker image:
|
||||
|
||||
docker build -t my-django-app .
|
||||
docker run --name some-django-app -d my-django-app
|
||||
docker build -t my-django-app .
|
||||
docker run --name some-django-app -d my-django-app
|
||||
|
||||
You can test it by visiting `http://container-ip:8000` in a browser or, if you
|
||||
need access outside the host, on `http://localhost:8000` with the following command:
|
||||
You can test it by visiting `http://container-ip:8000` in a browser or, if you need access outside the host, on `http://localhost:8000` with the following command:
|
||||
|
||||
docker run --name some-django-app -p 8000:8000 -d my-django-app
|
||||
docker run --name some-django-app -p 8000:8000 -d my-django-app
|
||||
|
||||
## Without a `Dockerfile`
|
||||
|
||||
Of course, if you don't want to take advantage of magical and convenient
|
||||
`ONBUILD` triggers, you can always just use `docker run` directly to avoid
|
||||
having to add a `Dockerfile` to your project.
|
||||
Of course, if you don't want to take advantage of magical and convenient `ONBUILD` triggers, you can always just use `docker run` directly to avoid having to add a `Dockerfile` to your project.
|
||||
|
||||
docker run --name some-django-app -v "$PWD":/usr/src/app -w /usr/src/app -p 8000:8000 -d django bash -c "pip install -r requirements.txt && python manage.py runserver 0.0.0.0:8000"
|
||||
docker run --name some-django-app -v "$PWD":/usr/src/app -w /usr/src/app -p 8000:8000 -d django bash -c "pip install -r requirements.txt && python manage.py runserver 0.0.0.0:8000"
|
||||
|
||||
## Bootstrap a new Django Application
|
||||
|
||||
If you want to generate the scaffolding for a new Django project, you can do the
|
||||
following:
|
||||
If you want to generate the scaffolding for a new Django project, you can do the following:
|
||||
|
||||
docker run -it --rm --user "$(id -u):$(id -g)" -v "$PWD":/usr/src/app -w /usr/src/app django django-admin.py startproject mysite
|
||||
docker run -it --rm --user "$(id -u):$(id -g)" -v "$PWD":/usr/src/app -w /usr/src/app django django-admin.py startproject mysite
|
||||
|
||||
This will create a sub-directory named `mysite` inside your current directory.
|
||||
|
|
|
|||
|
|
@ -1,2 +1 @@
|
|||
View [license information](https://github.com/django/django/blob/master/LICENSE)
|
||||
for the software contained in this image.
|
||||
View [license information](https://github.com/django/django/blob/master/LICENSE) for the software contained in this image.
|
||||
|
|
|
|||
|
|
@ -1,30 +1,20 @@
|
|||
# Supported tags and respective `Dockerfile` links
|
||||
|
||||
- [`1.5.0`, `1.5`, `1`, `latest` (*Dockerfile*)](https://github.com/docker/docker/blob/v1.5.0/Dockerfile)
|
||||
- [`1.5.0`, `1.5`, `1`, `latest` (*Dockerfile*)](https://github.com/docker/docker/blob/v1.5.0/Dockerfile)
|
||||
|
||||
For more information about this image and its history, please see the [relevant
|
||||
manifest file
|
||||
(`library/docker-dev`)](https://github.com/docker-library/official-images/blob/master/library/docker-dev)
|
||||
in the [`docker-library/official-images` GitHub
|
||||
repo](https://github.com/docker-library/official-images).
|
||||
For more information about this image and its history, please see the [relevant manifest file (`library/docker-dev`)](https://github.com/docker-library/official-images/blob/master/library/docker-dev) in the [`docker-library/official-images` GitHub repo](https://github.com/docker-library/official-images).
|
||||
|
||||
# What is Docker?
|
||||
|
||||
Docker is an open-source project that automates the deployment of applications
|
||||
inside software containers, by providing an additional layer of abstraction and
|
||||
automation of operating system–level virtualization on Linux. Docker uses
|
||||
resource isolation features of the Linux kernel such as cgroups and kernel
|
||||
namespaces to allow independent "containers" to run within a single Linux
|
||||
instance, avoiding the overhead of starting virtual machines.
|
||||
Docker is an open-source project that automates the deployment of applications inside software containers, by providing an additional layer of abstraction and automation of operating system–level virtualization on Linux. Docker uses resource isolation features of the Linux kernel such as cgroups and kernel namespaces to allow independent "containers" to run within a single Linux instance, avoiding the overhead of starting virtual machines.
|
||||
|
||||
> [wikipedia.org/wiki/Docker_(software)](https://en.wikipedia.org/wiki/Docker_(software))
|
||||
> [wikipedia.org/wiki/Docker_(software)](https://en.wikipedia.org/wiki/Docker_%28software%29)
|
||||
|
||||

|
||||
|
||||
# About this image
|
||||
|
||||
This image contains the building and testing environment of the Docker project
|
||||
itself, from which the official releases are made.
|
||||
This image contains the building and testing environment of the Docker project itself, from which the official releases are made.
|
||||
|
||||
# Supported Docker versions
|
||||
|
||||
|
|
@ -36,20 +26,12 @@ Support for older versions (down to 1.0) is provided on a best-effort basis.
|
|||
|
||||
## Issues
|
||||
|
||||
If you have any problems with or questions about this image, please contact us
|
||||
through a [GitHub issue](https://github.com/docker/docker/issues).
|
||||
If you have any problems with or questions about this image, please contact us through a [GitHub issue](https://github.com/docker/docker/issues).
|
||||
|
||||
You can also reach many of the official image maintainers via the
|
||||
`#docker-library` IRC channel on [Freenode](https://freenode.net).
|
||||
You can also reach many of the official image maintainers via the `#docker-library` IRC channel on [Freenode](https://freenode.net).
|
||||
|
||||
## Contributing
|
||||
|
||||
You are invited to contribute new features, fixes, or updates, large or small;
|
||||
we are always thrilled to receive pull requests, and do our best to process them
|
||||
as fast as we can.
|
||||
You are invited to contribute new features, fixes, or updates, large or small; we are always thrilled to receive pull requests, and do our best to process them as fast as we can.
|
||||
|
||||
Before you start to code, we recommend discussing your plans
|
||||
through a [GitHub issue](https://github.com/docker/docker/issues), especially for more ambitious
|
||||
contributions. This gives other contributors a chance to point you in the right
|
||||
direction, give you feedback on your design, and help you find out if someone
|
||||
else is working on the same thing.
|
||||
Before you start to code, we recommend discussing your plans through a [GitHub issue](https://github.com/docker/docker/issues), especially for more ambitious contributions. This gives other contributors a chance to point you in the right direction, give you feedback on your design, and help you find out if someone else is working on the same thing.
|
||||
|
|
|
|||
|
|
@ -1,17 +1,11 @@
|
|||
# What is Docker?
|
||||
|
||||
Docker is an open-source project that automates the deployment of applications
|
||||
inside software containers, by providing an additional layer of abstraction and
|
||||
automation of operating system–level virtualization on Linux. Docker uses
|
||||
resource isolation features of the Linux kernel such as cgroups and kernel
|
||||
namespaces to allow independent "containers" to run within a single Linux
|
||||
instance, avoiding the overhead of starting virtual machines.
|
||||
Docker is an open-source project that automates the deployment of applications inside software containers, by providing an additional layer of abstraction and automation of operating system–level virtualization on Linux. Docker uses resource isolation features of the Linux kernel such as cgroups and kernel namespaces to allow independent "containers" to run within a single Linux instance, avoiding the overhead of starting virtual machines.
|
||||
|
||||
> [wikipedia.org/wiki/Docker_(software)](https://en.wikipedia.org/wiki/Docker_(software))
|
||||
> [wikipedia.org/wiki/Docker_(software)](https://en.wikipedia.org/wiki/Docker_%28software%29)
|
||||
|
||||
%%LOGO%%
|
||||
|
||||
# About this image
|
||||
|
||||
This image contains the building and testing environment of the Docker project
|
||||
itself, from which the official releases are made.
|
||||
This image contains the building and testing environment of the Docker project itself, from which the official releases are made.
|
||||
|
|
|
|||
|
|
@ -1,19 +1,13 @@
|
|||
# Supported tags and respective `Dockerfile` links
|
||||
|
||||
- [`1.3.8`, `1.3` (*1.3/Dockerfile*)](https://github.com/docker-library/elasticsearch/blob/ed6fc6c6f26b38941199e135772c464f96dfd438/1.3/Dockerfile)
|
||||
- [`1.4.3`, `1.4`, `1`, `latest` (*1.4/Dockerfile*)](https://github.com/docker-library/elasticsearch/blob/ed6fc6c6f26b38941199e135772c464f96dfd438/1.4/Dockerfile)
|
||||
- [`1.3.8`, `1.3` (*1.3/Dockerfile*)](https://github.com/docker-library/elasticsearch/blob/ed6fc6c6f26b38941199e135772c464f96dfd438/1.3/Dockerfile)
|
||||
- [`1.4.3`, `1.4`, `1`, `latest` (*1.4/Dockerfile*)](https://github.com/docker-library/elasticsearch/blob/ed6fc6c6f26b38941199e135772c464f96dfd438/1.4/Dockerfile)
|
||||
|
||||
For more information about this image and its history, please see the [relevant
|
||||
manifest file
|
||||
(`library/elasticsearch`)](https://github.com/docker-library/official-images/blob/master/library/elasticsearch)
|
||||
in the [`docker-library/official-images` GitHub
|
||||
repo](https://github.com/docker-library/official-images).
|
||||
For more information about this image and its history, please see the [relevant manifest file (`library/elasticsearch`)](https://github.com/docker-library/official-images/blob/master/library/elasticsearch) in the [`docker-library/official-images` GitHub repo](https://github.com/docker-library/official-images).
|
||||
|
||||
# What is Elasticsearch?
|
||||
|
||||
Elasticsearch is a search server based on Lucene. It provides a distributed,
|
||||
multitenant-capable full-text search engine with a RESTful web interface and
|
||||
schema-free JSON documents.
|
||||
Elasticsearch is a search server based on Lucene. It provides a distributed, multitenant-capable full-text search engine with a RESTful web interface and schema-free JSON documents.
|
||||
|
||||
Elasticsearch is a registered trademark of Elasticsearch BV.
|
||||
|
||||
|
|
@ -25,23 +19,19 @@ Elasticsearch is a registered trademark of Elasticsearch BV.
|
|||
|
||||
You can run the default `elasticsearch` command simply:
|
||||
|
||||
docker run -d elasticsearch
|
||||
docker run -d elasticsearch
|
||||
|
||||
You can also pass in additional flags to `elasticsearch`:
|
||||
|
||||
docker run -d elasticsearch elasticsearch -Des.node.name="TestNode"
|
||||
docker run -d elasticsearch elasticsearch -Des.node.name="TestNode"
|
||||
|
||||
This image comes with a default set of configuration files for `elasticsearch`,
|
||||
but if you want to provide your own set of configuration files, you can do so
|
||||
via a volume mounted at `/usr/share/elasticsearch/config`:
|
||||
This image comes with a default set of configuration files for `elasticsearch`, but if you want to provide your own set of configuration files, you can do so via a volume mounted at `/usr/share/elasticsearch/config`:
|
||||
|
||||
docker run -d -v "$PWD/config":/usr/share/elasticsearch/config elasticsearch
|
||||
docker run -d -v "$PWD/config":/usr/share/elasticsearch/config elasticsearch
|
||||
|
||||
This image is configured with a volume at `/usr/share/elasticsearch/data` to
|
||||
hold the persisted index data. Use that path if you would like to keep the data
|
||||
in a mounted volume:
|
||||
This image is configured with a volume at `/usr/share/elasticsearch/data` to hold the persisted index data. Use that path if you would like to keep the data in a mounted volume:
|
||||
|
||||
docker run -d -v "$PWD/esdata":/usr/share/elasticsearch/data elasticsearch
|
||||
docker run -d -v "$PWD/esdata":/usr/share/elasticsearch/data elasticsearch
|
||||
|
||||
# License
|
||||
|
||||
|
|
@ -57,20 +47,12 @@ Support for older versions (down to 1.0) is provided on a best-effort basis.
|
|||
|
||||
## Issues
|
||||
|
||||
If you have any problems with or questions about this image, please contact us
|
||||
through a [GitHub issue](https://github.com/docker-library/elasticsearch/issues).
|
||||
If you have any problems with or questions about this image, please contact us through a [GitHub issue](https://github.com/docker-library/elasticsearch/issues).
|
||||
|
||||
You can also reach many of the official image maintainers via the
|
||||
`#docker-library` IRC channel on [Freenode](https://freenode.net).
|
||||
You can also reach many of the official image maintainers via the `#docker-library` IRC channel on [Freenode](https://freenode.net).
|
||||
|
||||
## Contributing
|
||||
|
||||
You are invited to contribute new features, fixes, or updates, large or small;
|
||||
we are always thrilled to receive pull requests, and do our best to process them
|
||||
as fast as we can.
|
||||
You are invited to contribute new features, fixes, or updates, large or small; we are always thrilled to receive pull requests, and do our best to process them as fast as we can.
|
||||
|
||||
Before you start to code, we recommend discussing your plans
|
||||
through a [GitHub issue](https://github.com/docker-library/elasticsearch/issues), especially for more ambitious
|
||||
contributions. This gives other contributors a chance to point you in the right
|
||||
direction, give you feedback on your design, and help you find out if someone
|
||||
else is working on the same thing.
|
||||
Before you start to code, we recommend discussing your plans through a [GitHub issue](https://github.com/docker-library/elasticsearch/issues), especially for more ambitious contributions. This gives other contributors a chance to point you in the right direction, give you feedback on your design, and help you find out if someone else is working on the same thing.
|
||||
|
|
|
|||
|
|
@ -1,8 +1,6 @@
|
|||
# What is Elasticsearch?
|
||||
|
||||
Elasticsearch is a search server based on Lucene. It provides a distributed,
|
||||
multitenant-capable full-text search engine with a RESTful web interface and
|
||||
schema-free JSON documents.
|
||||
Elasticsearch is a search server based on Lucene. It provides a distributed, multitenant-capable full-text search engine with a RESTful web interface and schema-free JSON documents.
|
||||
|
||||
Elasticsearch is a registered trademark of Elasticsearch BV.
|
||||
|
||||
|
|
@ -14,20 +12,16 @@ Elasticsearch is a registered trademark of Elasticsearch BV.
|
|||
|
||||
You can run the default `elasticsearch` command simply:
|
||||
|
||||
docker run -d elasticsearch
|
||||
docker run -d elasticsearch
|
||||
|
||||
You can also pass in additional flags to `elasticsearch`:
|
||||
|
||||
docker run -d elasticsearch elasticsearch -Des.node.name="TestNode"
|
||||
docker run -d elasticsearch elasticsearch -Des.node.name="TestNode"
|
||||
|
||||
This image comes with a default set of configuration files for `elasticsearch`,
|
||||
but if you want to provide your own set of configuration files, you can do so
|
||||
via a volume mounted at `/usr/share/elasticsearch/config`:
|
||||
This image comes with a default set of configuration files for `elasticsearch`, but if you want to provide your own set of configuration files, you can do so via a volume mounted at `/usr/share/elasticsearch/config`:
|
||||
|
||||
docker run -d -v "$PWD/config":/usr/share/elasticsearch/config elasticsearch
|
||||
docker run -d -v "$PWD/config":/usr/share/elasticsearch/config elasticsearch
|
||||
|
||||
This image is configured with a volume at `/usr/share/elasticsearch/data` to
|
||||
hold the persisted index data. Use that path if you would like to keep the data
|
||||
in a mounted volume:
|
||||
This image is configured with a volume at `/usr/share/elasticsearch/data` to hold the persisted index data. Use that path if you would like to keep the data in a mounted volume:
|
||||
|
||||
docker run -d -v "$PWD/esdata":/usr/share/elasticsearch/data elasticsearch
|
||||
docker run -d -v "$PWD/esdata":/usr/share/elasticsearch/data elasticsearch
|
||||
|
|
|
|||
|
|
@ -1,37 +1,27 @@
|
|||
# Supported tags and respective `Dockerfile` links
|
||||
|
||||
- [`latest`, `21` (*Dockerfile*)](https://github.com/fedora-cloud/docker-brew-fedora/blob/b252b53a976a0e908805d59fb7250e8d5072f4e8/Dockerfile)
|
||||
- [`rawhide` (*Dockerfile*)](https://github.com/fedora-cloud/docker-brew-fedora/blob/8b025821f5bc795f9af6023be0e96b5b227a756a/Dockerfile)
|
||||
- [`20`, `heisenbug` (*Dockerfile*)](https://github.com/fedora-cloud/docker-brew-fedora/blob/58a9aeac899b94e6ea1b1cbe6853b9b134c7ebc5/Dockerfile)
|
||||
- [`latest`, `21` (*Dockerfile*)](https://github.com/fedora-cloud/docker-brew-fedora/blob/b252b53a976a0e908805d59fb7250e8d5072f4e8/Dockerfile)
|
||||
- [`rawhide` (*Dockerfile*)](https://github.com/fedora-cloud/docker-brew-fedora/blob/8b025821f5bc795f9af6023be0e96b5b227a756a/Dockerfile)
|
||||
- [`20`, `heisenbug` (*Dockerfile*)](https://github.com/fedora-cloud/docker-brew-fedora/blob/58a9aeac899b94e6ea1b1cbe6853b9b134c7ebc5/Dockerfile)
|
||||
|
||||
For more information about this image and its history, please see the [relevant
|
||||
manifest file
|
||||
(`library/fedora`)](https://github.com/docker-library/official-images/blob/master/library/fedora)
|
||||
in the [`docker-library/official-images` GitHub
|
||||
repo](https://github.com/docker-library/official-images).
|
||||
For more information about this image and its history, please see the [relevant manifest file (`library/fedora`)](https://github.com/docker-library/official-images/blob/master/library/fedora) in the [`docker-library/official-images` GitHub repo](https://github.com/docker-library/official-images).
|
||||
|
||||
# Fedora
|
||||
|
||||
This image serves as the `official Fedora image` for `Fedora 21` and as a
|
||||
semi-official image for Fedora 20 (heisenbug) and rawhide.
|
||||
This image serves as the `official Fedora image` for `Fedora 21` and as a semi-official image for Fedora 20 (heisenbug) and rawhide.
|
||||
|
||||

|
||||
|
||||
The `fedora:latest` tag will always point to the latest stable
|
||||
release, currently [Fedora 21](https://getfedora.org/). `fedora:latest` is
|
||||
now the same as `fedora:21`.
|
||||
The `fedora:latest` tag will always point to the latest stable release, currently [Fedora 21](https://getfedora.org/). `fedora:latest` is now the same as `fedora:21`.
|
||||
|
||||
Fedora rawhide is available via `fedora:rawhide` and Fedora 20 via
|
||||
`fedora:20` and `fedora:heisenbug`.
|
||||
Fedora rawhide is available via `fedora:rawhide` and Fedora 20 via `fedora:20` and `fedora:heisenbug`.
|
||||
|
||||
The metalink `http://mirrors.fedoraproject.org` is used to automatically select
|
||||
a mirror site (both for building the image as well as for the yum repos in the
|
||||
container image).
|
||||
The metalink `http://mirrors.fedoraproject.org` is used to automatically select a mirror site (both for building the image as well as for the yum repos in the container image).
|
||||
|
||||
$ docker run fedora cat /etc/yum.repos.d/fedora.repo | grep metalink
|
||||
metalink=https://mirrors.fedoraproject.org/metalink?repo=fedora-$releasever&arch=$basearch
|
||||
metalink=https://mirrors.fedoraproject.org/metalink?repo=fedora-debug-$releasever&arch=$basearch
|
||||
metalink=https://mirrors.fedoraproject.org/metalink?repo=fedora-source-$releasever&arch=$basearch
|
||||
$ docker run fedora cat /etc/yum.repos.d/fedora.repo | grep metalink
|
||||
metalink=https://mirrors.fedoraproject.org/metalink?repo=fedora-$releasever&arch=$basearch
|
||||
metalink=https://mirrors.fedoraproject.org/metalink?repo=fedora-debug-$releasever&arch=$basearch
|
||||
metalink=https://mirrors.fedoraproject.org/metalink?repo=fedora-source-$releasever&arch=$basearch
|
||||
|
||||
# Supported Docker versions
|
||||
|
||||
|
|
@ -43,20 +33,12 @@ Support for older versions (down to 1.0) is provided on a best-effort basis.
|
|||
|
||||
## Issues
|
||||
|
||||
If you have any problems with or questions about this image, please contact us
|
||||
by filing a bug on [Fedora's bugzilla page](https://bugzilla.redhat.com/enter_bug.cgi?product=Fedora) (choose `docker-io` as component and include details about image problems in the description) or through a [GitHub issue](https://github.com/lsm5/docker-brew-fedora/issues).
|
||||
If you have any problems with or questions about this image, please contact us by filing a bug on [Fedora's bugzilla page](https://bugzilla.redhat.com/enter_bug.cgi?product=Fedora) (choose `docker-io` as component and include details about image problems in the description) or through a [GitHub issue](https://github.com/lsm5/docker-brew-fedora/issues).
|
||||
|
||||
You can also reach many of the official image maintainers via the
|
||||
`#docker-library` IRC channel on [Freenode](https://freenode.net).
|
||||
You can also reach many of the official image maintainers via the `#docker-library` IRC channel on [Freenode](https://freenode.net).
|
||||
|
||||
## Contributing
|
||||
|
||||
You are invited to contribute new features, fixes, or updates, large or small;
|
||||
we are always thrilled to receive pull requests, and do our best to process them
|
||||
as fast as we can.
|
||||
You are invited to contribute new features, fixes, or updates, large or small; we are always thrilled to receive pull requests, and do our best to process them as fast as we can.
|
||||
|
||||
Before you start to code, we recommend discussing your plans by filing a bug on [Fedora's bugzilla page](https://bugzilla.redhat.com/enter_bug.cgi?product=Fedora) (choose `docker-io` as component and include details about image problems in the description) or
|
||||
through a [GitHub issue](https://github.com/lsm5/docker-brew-fedora/issues), especially for more ambitious
|
||||
contributions. This gives other contributors a chance to point you in the right
|
||||
direction, give you feedback on your design, and help you find out if someone
|
||||
else is working on the same thing.
|
||||
Before you start to code, we recommend discussing your plans by filing a bug on [Fedora's bugzilla page](https://bugzilla.redhat.com/enter_bug.cgi?product=Fedora) (choose `docker-io` as component and include details about image problems in the description) or through a [GitHub issue](https://github.com/lsm5/docker-brew-fedora/issues), especially for more ambitious contributions. This gives other contributors a chance to point you in the right direction, give you feedback on your design, and help you find out if someone else is working on the same thing.
|
||||
|
|
|
|||
|
|
@ -1,22 +1,16 @@
|
|||
# Fedora
|
||||
|
||||
This image serves as the `official Fedora image` for `Fedora 21` and as a
|
||||
semi-official image for Fedora 20 (heisenbug) and rawhide.
|
||||
This image serves as the `official Fedora image` for `Fedora 21` and as a semi-official image for Fedora 20 (heisenbug) and rawhide.
|
||||
|
||||
%%LOGO%%
|
||||
|
||||
The `fedora:latest` tag will always point to the latest stable
|
||||
release, currently [Fedora 21](https://getfedora.org/). `fedora:latest` is
|
||||
now the same as `fedora:21`.
|
||||
The `fedora:latest` tag will always point to the latest stable release, currently [Fedora 21](https://getfedora.org/). `fedora:latest` is now the same as `fedora:21`.
|
||||
|
||||
Fedora rawhide is available via `fedora:rawhide` and Fedora 20 via
|
||||
`fedora:20` and `fedora:heisenbug`.
|
||||
Fedora rawhide is available via `fedora:rawhide` and Fedora 20 via `fedora:20` and `fedora:heisenbug`.
|
||||
|
||||
The metalink `http://mirrors.fedoraproject.org` is used to automatically select
|
||||
a mirror site (both for building the image as well as for the yum repos in the
|
||||
container image).
|
||||
The metalink `http://mirrors.fedoraproject.org` is used to automatically select a mirror site (both for building the image as well as for the yum repos in the container image).
|
||||
|
||||
$ docker run fedora cat /etc/yum.repos.d/fedora.repo | grep metalink
|
||||
metalink=https://mirrors.fedoraproject.org/metalink?repo=fedora-$releasever&arch=$basearch
|
||||
metalink=https://mirrors.fedoraproject.org/metalink?repo=fedora-debug-$releasever&arch=$basearch
|
||||
metalink=https://mirrors.fedoraproject.org/metalink?repo=fedora-source-$releasever&arch=$basearch
|
||||
$ docker run fedora cat /etc/yum.repos.d/fedora.repo | grep metalink
|
||||
metalink=https://mirrors.fedoraproject.org/metalink?repo=fedora-$releasever&arch=$basearch
|
||||
metalink=https://mirrors.fedoraproject.org/metalink?repo=fedora-debug-$releasever&arch=$basearch
|
||||
metalink=https://mirrors.fedoraproject.org/metalink?repo=fedora-source-$releasever&arch=$basearch
|
||||
|
|
|
|||
|
|
@ -1,23 +1,15 @@
|
|||
# Supported tags and respective `Dockerfile` links
|
||||
|
||||
- [`4.6.4`, `4.6` (*4.6/Dockerfile*)](https://github.com/docker-library/gcc/blob/0d76d76561f3e8581576f9ccc71079e3455a0bea/4.6/Dockerfile)
|
||||
- [`4.7.4`, `4.7` (*4.7/Dockerfile*)](https://github.com/docker-library/gcc/blob/0d76d76561f3e8581576f9ccc71079e3455a0bea/4.7/Dockerfile)
|
||||
- [`4.8.4`, `4.8` (*4.8/Dockerfile*)](https://github.com/docker-library/gcc/blob/0d76d76561f3e8581576f9ccc71079e3455a0bea/4.8/Dockerfile)
|
||||
- [`4.9.2`, `4.9`, `latest` (*4.9/Dockerfile*)](https://github.com/docker-library/gcc/blob/0d76d76561f3e8581576f9ccc71079e3455a0bea/4.9/Dockerfile)
|
||||
- [`4.6.4`, `4.6` (*4.6/Dockerfile*)](https://github.com/docker-library/gcc/blob/0d76d76561f3e8581576f9ccc71079e3455a0bea/4.6/Dockerfile)
|
||||
- [`4.7.4`, `4.7` (*4.7/Dockerfile*)](https://github.com/docker-library/gcc/blob/0d76d76561f3e8581576f9ccc71079e3455a0bea/4.7/Dockerfile)
|
||||
- [`4.8.4`, `4.8` (*4.8/Dockerfile*)](https://github.com/docker-library/gcc/blob/0d76d76561f3e8581576f9ccc71079e3455a0bea/4.8/Dockerfile)
|
||||
- [`4.9.2`, `4.9`, `latest` (*4.9/Dockerfile*)](https://github.com/docker-library/gcc/blob/0d76d76561f3e8581576f9ccc71079e3455a0bea/4.9/Dockerfile)
|
||||
|
||||
For more information about this image and its history, please see the [relevant
|
||||
manifest file
|
||||
(`library/gcc`)](https://github.com/docker-library/official-images/blob/master/library/gcc)
|
||||
in the [`docker-library/official-images` GitHub
|
||||
repo](https://github.com/docker-library/official-images).
|
||||
For more information about this image and its history, please see the [relevant manifest file (`library/gcc`)](https://github.com/docker-library/official-images/blob/master/library/gcc) in the [`docker-library/official-images` GitHub repo](https://github.com/docker-library/official-images).
|
||||
|
||||
# What is GCC?
|
||||
|
||||
The GNU Compiler Collection (GCC) is a compiler system produced by the GNU
|
||||
Project that supports various programming languages. GCC is a key component of
|
||||
the GNU toolchain. The Free Software Foundation (FSF) distributes GCC under the
|
||||
GNU General Public License (GNU GPL). GCC has played an important role in the
|
||||
growth of free software, as both a tool and an example.
|
||||
The GNU Compiler Collection (GCC) is a compiler system produced by the GNU Project that supports various programming languages. GCC is a key component of the GNU toolchain. The Free Software Foundation (FSF) distributes GCC under the GNU General Public License (GNU GPL). GCC has played an important role in the growth of free software, as both a tool and an example.
|
||||
|
||||
> [wikipedia.org/wiki/GNU_Compiler_Collection](https://en.wikipedia.org/wiki/GNU_Compiler_Collection)
|
||||
|
||||
|
|
@ -27,41 +19,32 @@ growth of free software, as both a tool and an example.
|
|||
|
||||
## Start a GCC instance running your app
|
||||
|
||||
The most straightforward way to use this image is to use a gcc container as both
|
||||
the build and runtime environment. In your `Dockerfile`, writing something along
|
||||
the lines of the following will compile and run your project:
|
||||
The most straightforward way to use this image is to use a gcc container as both the build and runtime environment. In your `Dockerfile`, writing something along the lines of the following will compile and run your project:
|
||||
|
||||
FROM gcc:4.9
|
||||
COPY . /usr/src/myapp
|
||||
WORKDIR /usr/src/myapp
|
||||
RUN gcc -o myapp main.c
|
||||
CMD ["./myapp"]
|
||||
FROM gcc:4.9
|
||||
COPY . /usr/src/myapp
|
||||
WORKDIR /usr/src/myapp
|
||||
RUN gcc -o myapp main.c
|
||||
CMD ["./myapp"]
|
||||
|
||||
Then, build and run the Docker image:
|
||||
|
||||
docker build -t my-gcc-app .
|
||||
docker run -it --rm --name my-running-app my-gcc-app
|
||||
docker build -t my-gcc-app .
|
||||
docker run -it --rm --name my-running-app my-gcc-app
|
||||
|
||||
## Compile your app inside the Docker container
|
||||
|
||||
There may be occasions where it is not appropriate to run your app inside a
|
||||
container. To compile, but not run your app inside the Docker instance, you can
|
||||
write something like:
|
||||
There may be occasions where it is not appropriate to run your app inside a container. To compile, but not run your app inside the Docker instance, you can write something like:
|
||||
|
||||
docker run --rm -v "$PWD":/usr/src/myapp -w /usr/src/myapp gcc:4.9 gcc -o myapp myapp.c
|
||||
docker run --rm -v "$PWD":/usr/src/myapp -w /usr/src/myapp gcc:4.9 gcc -o myapp myapp.c
|
||||
|
||||
This will add your current directory, as a volume, to the container, set the
|
||||
working directory to the volume, and run the command `gcc -o myapp myapp.c.`
|
||||
This tells gcc to compile the code in `myapp.c` and output the executable to
|
||||
myapp. Alternatively, if you have a `Makefile`, you can instead run the `make`
|
||||
command inside your container:
|
||||
This will add your current directory, as a volume, to the container, set the working directory to the volume, and run the command `gcc -o myapp myapp.c.` This tells gcc to compile the code in `myapp.c` and output the executable to myapp. Alternatively, if you have a `Makefile`, you can instead run the `make` command inside your container:
|
||||
|
||||
docker run --rm -v "$PWD":/usr/src/myapp -w /usr/src/myapp gcc:4.9 make
|
||||
docker run --rm -v "$PWD":/usr/src/myapp -w /usr/src/myapp gcc:4.9 make
|
||||
|
||||
# License
|
||||
|
||||
View [license information](https://gcc.gnu.org/viewcvs/gcc/trunk/gcc/COPYING3?view=markup)
|
||||
for the software contained in this image.
|
||||
View [license information](https://gcc.gnu.org/viewcvs/gcc/trunk/gcc/COPYING3?view=markup) for the software contained in this image.
|
||||
|
||||
# Supported Docker versions
|
||||
|
||||
|
|
@ -73,20 +56,12 @@ Support for older versions (down to 1.0) is provided on a best-effort basis.
|
|||
|
||||
## Issues
|
||||
|
||||
If you have any problems with or questions about this image, please contact us
|
||||
through a [GitHub issue](https://github.com/docker-library/gcc/issues).
|
||||
If you have any problems with or questions about this image, please contact us through a [GitHub issue](https://github.com/docker-library/gcc/issues).
|
||||
|
||||
You can also reach many of the official image maintainers via the
|
||||
`#docker-library` IRC channel on [Freenode](https://freenode.net).
|
||||
You can also reach many of the official image maintainers via the `#docker-library` IRC channel on [Freenode](https://freenode.net).
|
||||
|
||||
## Contributing
|
||||
|
||||
You are invited to contribute new features, fixes, or updates, large or small;
|
||||
we are always thrilled to receive pull requests, and do our best to process them
|
||||
as fast as we can.
|
||||
You are invited to contribute new features, fixes, or updates, large or small; we are always thrilled to receive pull requests, and do our best to process them as fast as we can.
|
||||
|
||||
Before you start to code, we recommend discussing your plans
|
||||
through a [GitHub issue](https://github.com/docker-library/gcc/issues), especially for more ambitious
|
||||
contributions. This gives other contributors a chance to point you in the right
|
||||
direction, give you feedback on your design, and help you find out if someone
|
||||
else is working on the same thing.
|
||||
Before you start to code, we recommend discussing your plans through a [GitHub issue](https://github.com/docker-library/gcc/issues), especially for more ambitious contributions. This gives other contributors a chance to point you in the right direction, give you feedback on your design, and help you find out if someone else is working on the same thing.
|
||||
|
|
|
|||
|
|
@ -1,10 +1,6 @@
|
|||
# What is GCC?
|
||||
|
||||
The GNU Compiler Collection (GCC) is a compiler system produced by the GNU
|
||||
Project that supports various programming languages. GCC is a key component of
|
||||
the GNU toolchain. The Free Software Foundation (FSF) distributes GCC under the
|
||||
GNU General Public License (GNU GPL). GCC has played an important role in the
|
||||
growth of free software, as both a tool and an example.
|
||||
The GNU Compiler Collection (GCC) is a compiler system produced by the GNU Project that supports various programming languages. GCC is a key component of the GNU toolchain. The Free Software Foundation (FSF) distributes GCC under the GNU General Public License (GNU GPL). GCC has played an important role in the growth of free software, as both a tool and an example.
|
||||
|
||||
> [wikipedia.org/wiki/GNU_Compiler_Collection](https://en.wikipedia.org/wiki/GNU_Compiler_Collection)
|
||||
|
||||
|
|
@ -14,33 +10,25 @@ growth of free software, as both a tool and an example.
|
|||
|
||||
## Start a GCC instance running your app
|
||||
|
||||
The most straightforward way to use this image is to use a gcc container as both
|
||||
the build and runtime environment. In your `Dockerfile`, writing something along
|
||||
the lines of the following will compile and run your project:
|
||||
The most straightforward way to use this image is to use a gcc container as both the build and runtime environment. In your `Dockerfile`, writing something along the lines of the following will compile and run your project:
|
||||
|
||||
FROM gcc:4.9
|
||||
COPY . /usr/src/myapp
|
||||
WORKDIR /usr/src/myapp
|
||||
RUN gcc -o myapp main.c
|
||||
CMD ["./myapp"]
|
||||
FROM gcc:4.9
|
||||
COPY . /usr/src/myapp
|
||||
WORKDIR /usr/src/myapp
|
||||
RUN gcc -o myapp main.c
|
||||
CMD ["./myapp"]
|
||||
|
||||
Then, build and run the Docker image:
|
||||
|
||||
docker build -t my-gcc-app .
|
||||
docker run -it --rm --name my-running-app my-gcc-app
|
||||
docker build -t my-gcc-app .
|
||||
docker run -it --rm --name my-running-app my-gcc-app
|
||||
|
||||
## Compile your app inside the Docker container
|
||||
|
||||
There may be occasions where it is not appropriate to run your app inside a
|
||||
container. To compile, but not run your app inside the Docker instance, you can
|
||||
write something like:
|
||||
There may be occasions where it is not appropriate to run your app inside a container. To compile, but not run your app inside the Docker instance, you can write something like:
|
||||
|
||||
docker run --rm -v "$PWD":/usr/src/myapp -w /usr/src/myapp gcc:4.9 gcc -o myapp myapp.c
|
||||
docker run --rm -v "$PWD":/usr/src/myapp -w /usr/src/myapp gcc:4.9 gcc -o myapp myapp.c
|
||||
|
||||
This will add your current directory, as a volume, to the container, set the
|
||||
working directory to the volume, and run the command `gcc -o myapp myapp.c.`
|
||||
This tells gcc to compile the code in `myapp.c` and output the executable to
|
||||
myapp. Alternatively, if you have a `Makefile`, you can instead run the `make`
|
||||
command inside your container:
|
||||
This will add your current directory, as a volume, to the container, set the working directory to the volume, and run the command `gcc -o myapp myapp.c.` This tells gcc to compile the code in `myapp.c` and output the executable to myapp. Alternatively, if you have a `Makefile`, you can instead run the `make` command inside your container:
|
||||
|
||||
docker run --rm -v "$PWD":/usr/src/myapp -w /usr/src/myapp gcc:4.9 make
|
||||
docker run --rm -v "$PWD":/usr/src/myapp -w /usr/src/myapp gcc:4.9 make
|
||||
|
|
|
|||
|
|
@ -1,2 +1 @@
|
|||
View [license information](https://gcc.gnu.org/viewcvs/gcc/trunk/gcc/COPYING3?view=markup)
|
||||
for the software contained in this image.
|
||||
View [license information](https://gcc.gnu.org/viewcvs/gcc/trunk/gcc/COPYING3?view=markup) for the software contained in this image.
|
||||
|
|
|
|||
|
|
@ -51,7 +51,7 @@ for repoDir in "${repoDirs[@]}"; do
|
|||
|
||||
url="https://$gitUrl/blob/$commit/${dir}Dockerfile"
|
||||
|
||||
echo '- ['"${repoDirTags["$repoDir"]}"' (*'"${dir}Dockerfile"'*)]('"$url"')'
|
||||
echo $'-\t['"${repoDirTags["$repoDir"]}"' (*'"${dir}Dockerfile"'*)]('"$url"')'
|
||||
done
|
||||
|
||||
echo
|
||||
|
|
|
|||
|
|
@ -1,29 +1,21 @@
|
|||
# Supported tags and respective `Dockerfile` links
|
||||
|
||||
- [`1.3.3`, `1.3` (*1.3/Dockerfile*)](https://github.com/docker-library/golang/blob/2668a6b1db728588dec26cf74e7e7afa146fe5e6/1.3/Dockerfile)
|
||||
- [`1.3.3-onbuild`, `1.3-onbuild` (*1.3/onbuild/Dockerfile*)](https://github.com/docker-library/golang/blob/4d4b14164e50c089a09b9364697749dc7f764824/1.3/onbuild/Dockerfile)
|
||||
- [`1.3.3-cross`, `1.3-cross` (*1.3/cross/Dockerfile*)](https://github.com/docker-library/golang/blob/acc4ed5ba8dfad17bd484ac858950bc6a6f9acde/1.3/cross/Dockerfile)
|
||||
- [`1.3.3-wheezy`, `1.3-wheezy` (*1.3/wheezy/Dockerfile*)](https://github.com/docker-library/golang/blob/2668a6b1db728588dec26cf74e7e7afa146fe5e6/1.3/wheezy/Dockerfile)
|
||||
- [`1.4.1`, `1.4`, `1`, `latest` (*1.4/Dockerfile*)](https://github.com/docker-library/golang/blob/304244cfe374d3477e746c057a5ec4dcf7a47657/1.4/Dockerfile)
|
||||
- [`1.4.1-onbuild`, `1.4-onbuild`, `1-onbuild`, `onbuild` (*1.4/onbuild/Dockerfile*)](https://github.com/docker-library/golang/blob/c1baf037d71331eb0b8d4c70cff4c29cf124c5e0/1.4/onbuild/Dockerfile)
|
||||
- [`1.4.1-cross`, `1.4-cross`, `1-cross`, `cross` (*1.4/cross/Dockerfile*)](https://github.com/docker-library/golang/blob/90b57a935ad9275997fda8741a5a7864eb1d51b5/1.4/cross/Dockerfile)
|
||||
- [`1.4.1-wheezy`, `1.4-wheezy`, `1-wheezy`, `wheezy` (*1.4/wheezy/Dockerfile*)](https://github.com/docker-library/golang/blob/304244cfe374d3477e746c057a5ec4dcf7a47657/1.4/wheezy/Dockerfile)
|
||||
- [`1.3.3`, `1.3` (*1.3/Dockerfile*)](https://github.com/docker-library/golang/blob/2668a6b1db728588dec26cf74e7e7afa146fe5e6/1.3/Dockerfile)
|
||||
- [`1.3.3-onbuild`, `1.3-onbuild` (*1.3/onbuild/Dockerfile*)](https://github.com/docker-library/golang/blob/4d4b14164e50c089a09b9364697749dc7f764824/1.3/onbuild/Dockerfile)
|
||||
- [`1.3.3-cross`, `1.3-cross` (*1.3/cross/Dockerfile*)](https://github.com/docker-library/golang/blob/acc4ed5ba8dfad17bd484ac858950bc6a6f9acde/1.3/cross/Dockerfile)
|
||||
- [`1.3.3-wheezy`, `1.3-wheezy` (*1.3/wheezy/Dockerfile*)](https://github.com/docker-library/golang/blob/2668a6b1db728588dec26cf74e7e7afa146fe5e6/1.3/wheezy/Dockerfile)
|
||||
- [`1.4.1`, `1.4`, `1`, `latest` (*1.4/Dockerfile*)](https://github.com/docker-library/golang/blob/304244cfe374d3477e746c057a5ec4dcf7a47657/1.4/Dockerfile)
|
||||
- [`1.4.1-onbuild`, `1.4-onbuild`, `1-onbuild`, `onbuild` (*1.4/onbuild/Dockerfile*)](https://github.com/docker-library/golang/blob/c1baf037d71331eb0b8d4c70cff4c29cf124c5e0/1.4/onbuild/Dockerfile)
|
||||
- [`1.4.1-cross`, `1.4-cross`, `1-cross`, `cross` (*1.4/cross/Dockerfile*)](https://github.com/docker-library/golang/blob/90b57a935ad9275997fda8741a5a7864eb1d51b5/1.4/cross/Dockerfile)
|
||||
- [`1.4.1-wheezy`, `1.4-wheezy`, `1-wheezy`, `wheezy` (*1.4/wheezy/Dockerfile*)](https://github.com/docker-library/golang/blob/304244cfe374d3477e746c057a5ec4dcf7a47657/1.4/wheezy/Dockerfile)
|
||||
|
||||
For more information about this image and its history, please see the [relevant
|
||||
manifest file
|
||||
(`library/golang`)](https://github.com/docker-library/official-images/blob/master/library/golang)
|
||||
in the [`docker-library/official-images` GitHub
|
||||
repo](https://github.com/docker-library/official-images).
|
||||
For more information about this image and its history, please see the [relevant manifest file (`library/golang`)](https://github.com/docker-library/official-images/blob/master/library/golang) in the [`docker-library/official-images` GitHub repo](https://github.com/docker-library/official-images).
|
||||
|
||||
# What is Go?
|
||||
|
||||
Go (a.k.a., Golang) is a programming language first developed at Google. It is a
|
||||
statically-typed language with syntax loosely derived from C, but with
|
||||
additional features such as garbage collection, type safety, some dynamic-typing
|
||||
capabilities, additional built-in types (e.g., variable-length arrays and
|
||||
key-value maps), and a large standard library.
|
||||
Go (a.k.a., Golang) is a programming language first developed at Google. It is a statically-typed language with syntax loosely derived from C, but with additional features such as garbage collection, type safety, some dynamic-typing capabilities, additional built-in types (e.g., variable-length arrays and key-value maps), and a large standard library.
|
||||
|
||||
> [wikipedia.org/wiki/Go_(programming_language)](http://en.wikipedia.org/wiki/Go_(programming_language))
|
||||
> [wikipedia.org/wiki/Go_(programming_language)](http://en.wikipedia.org/wiki/Go_%28programming_language%29)
|
||||
|
||||

|
||||
|
||||
|
|
@ -31,61 +23,48 @@ key-value maps), and a large standard library.
|
|||
|
||||
## Start a Go instance in your app
|
||||
|
||||
The most straightforward way to use this image is to use a Go container as both
|
||||
the build and runtime environment. In your `Dockerfile`, writing something along
|
||||
the lines of the following will compile and run your project:
|
||||
The most straightforward way to use this image is to use a Go container as both the build and runtime environment. In your `Dockerfile`, writing something along the lines of the following will compile and run your project:
|
||||
|
||||
FROM golang:1.3-onbuild
|
||||
FROM golang:1.3-onbuild
|
||||
|
||||
This image includes multiple `ONBUILD` triggers which should cover most
|
||||
applications. The build will `COPY . /usr/src/app`, `RUN go get -d -v`, and `RUN
|
||||
This image includes multiple `ONBUILD` triggers which should cover most applications. The build will `COPY . /usr/src/app`, `RUN go get -d -v`, and `RUN
|
||||
go install -v`.
|
||||
|
||||
This image also includes the `CMD ["app"]` instruction which is the default command
|
||||
when running the image without arguments.
|
||||
This image also includes the `CMD ["app"]` instruction which is the default command when running the image without arguments.
|
||||
|
||||
You can then build and run the Docker image:
|
||||
|
||||
docker build -t my-golang-app .
|
||||
docker run -it --rm --name my-running-app my-golang-app
|
||||
docker build -t my-golang-app .
|
||||
docker run -it --rm --name my-running-app my-golang-app
|
||||
|
||||
## Compile your app inside the Docker container
|
||||
|
||||
There may be occasions where it is not appropriate to run your app inside a
|
||||
container. To compile, but not run your app inside the Docker instance, you can
|
||||
write something like:
|
||||
There may be occasions where it is not appropriate to run your app inside a container. To compile, but not run your app inside the Docker instance, you can write something like:
|
||||
|
||||
docker run --rm -v "$PWD":/usr/src/myapp -w /usr/src/myapp golang:1.3 go build -v
|
||||
docker run --rm -v "$PWD":/usr/src/myapp -w /usr/src/myapp golang:1.3 go build -v
|
||||
|
||||
This will add your current directory as a volume to the container, set the
|
||||
working directory to the volume, and run the command `go build` which will tell
|
||||
go to compile the project in the working directory and output the executable to
|
||||
`myapp`. Alternatively, if you have a `Makefile`, you can run the `make` command
|
||||
inside your container.
|
||||
This will add your current directory as a volume to the container, set the working directory to the volume, and run the command `go build` which will tell go to compile the project in the working directory and output the executable to `myapp`. Alternatively, if you have a `Makefile`, you can run the `make` command inside your container.
|
||||
|
||||
docker run --rm -v "$PWD":/usr/src/myapp -w /usr/src/myapp golang:1.3 make
|
||||
docker run --rm -v "$PWD":/usr/src/myapp -w /usr/src/myapp golang:1.3 make
|
||||
|
||||
## Cross-compile your app inside the Docker container
|
||||
|
||||
If you need to compile your application for a platform other than `linux/amd64`
|
||||
(such as `windows/386`), this can be easily accomplished with the provided
|
||||
`cross` tags:
|
||||
If you need to compile your application for a platform other than `linux/amd64` (such as `windows/386`), this can be easily accomplished with the provided `cross` tags:
|
||||
|
||||
docker run --rm -v "$PWD":/usr/src/myapp -w /usr/src/myapp -e GOOS=windows -e GOARCH=386 golang:1.3-cross go build -v
|
||||
docker run --rm -v "$PWD":/usr/src/myapp -w /usr/src/myapp -e GOOS=windows -e GOARCH=386 golang:1.3-cross go build -v
|
||||
|
||||
Alternatively, you can build for multiple platforms at once:
|
||||
|
||||
docker run --rm -it -v "$PWD":/usr/src/myapp -w /usr/src/myapp golang:1.3-cross bash
|
||||
$ for GOOS in darwin linux; do
|
||||
> for GOARCH in 386 amd64; do
|
||||
> go build -v -o myapp-$GOOS-$GOARCH
|
||||
> done
|
||||
> done
|
||||
docker run --rm -it -v "$PWD":/usr/src/myapp -w /usr/src/myapp golang:1.3-cross bash
|
||||
$ for GOOS in darwin linux; do
|
||||
> for GOARCH in 386 amd64; do
|
||||
> go build -v -o myapp-$GOOS-$GOARCH
|
||||
> done
|
||||
> done
|
||||
|
||||
# License
|
||||
|
||||
View [license information](http://golang.org/LICENSE)
|
||||
for the software contained in this image.
|
||||
View [license information](http://golang.org/LICENSE) for the software contained in this image.
|
||||
|
||||
# Supported Docker versions
|
||||
|
||||
|
|
@ -97,20 +76,12 @@ Support for older versions (down to 1.0) is provided on a best-effort basis.
|
|||
|
||||
## Issues
|
||||
|
||||
If you have any problems with or questions about this image, please contact us
|
||||
through a [GitHub issue](https://github.com/docker-library/golang/issues).
|
||||
If you have any problems with or questions about this image, please contact us through a [GitHub issue](https://github.com/docker-library/golang/issues).
|
||||
|
||||
You can also reach many of the official image maintainers via the
|
||||
`#docker-library` IRC channel on [Freenode](https://freenode.net).
|
||||
You can also reach many of the official image maintainers via the `#docker-library` IRC channel on [Freenode](https://freenode.net).
|
||||
|
||||
## Contributing
|
||||
|
||||
You are invited to contribute new features, fixes, or updates, large or small;
|
||||
we are always thrilled to receive pull requests, and do our best to process them
|
||||
as fast as we can.
|
||||
You are invited to contribute new features, fixes, or updates, large or small; we are always thrilled to receive pull requests, and do our best to process them as fast as we can.
|
||||
|
||||
Before you start to code, we recommend discussing your plans
|
||||
through a [GitHub issue](https://github.com/docker-library/golang/issues), especially for more ambitious
|
||||
contributions. This gives other contributors a chance to point you in the right
|
||||
direction, give you feedback on your design, and help you find out if someone
|
||||
else is working on the same thing.
|
||||
Before you start to code, we recommend discussing your plans through a [GitHub issue](https://github.com/docker-library/golang/issues), especially for more ambitious contributions. This gives other contributors a chance to point you in the right direction, give you feedback on your design, and help you find out if someone else is working on the same thing.
|
||||
|
|
|
|||
|
|
@ -1,12 +1,8 @@
|
|||
# What is Go?
|
||||
|
||||
Go (a.k.a., Golang) is a programming language first developed at Google. It is a
|
||||
statically-typed language with syntax loosely derived from C, but with
|
||||
additional features such as garbage collection, type safety, some dynamic-typing
|
||||
capabilities, additional built-in types (e.g., variable-length arrays and
|
||||
key-value maps), and a large standard library.
|
||||
Go (a.k.a., Golang) is a programming language first developed at Google. It is a statically-typed language with syntax loosely derived from C, but with additional features such as garbage collection, type safety, some dynamic-typing capabilities, additional built-in types (e.g., variable-length arrays and key-value maps), and a large standard library.
|
||||
|
||||
> [wikipedia.org/wiki/Go_(programming_language)](http://en.wikipedia.org/wiki/Go_(programming_language))
|
||||
> [wikipedia.org/wiki/Go_(programming_language)](http://en.wikipedia.org/wiki/Go_%28programming_language%29)
|
||||
|
||||
%%LOGO%%
|
||||
|
||||
|
|
@ -14,53 +10,41 @@ key-value maps), and a large standard library.
|
|||
|
||||
## Start a Go instance in your app
|
||||
|
||||
The most straightforward way to use this image is to use a Go container as both
|
||||
the build and runtime environment. In your `Dockerfile`, writing something along
|
||||
the lines of the following will compile and run your project:
|
||||
The most straightforward way to use this image is to use a Go container as both the build and runtime environment. In your `Dockerfile`, writing something along the lines of the following will compile and run your project:
|
||||
|
||||
FROM golang:1.3-onbuild
|
||||
FROM golang:1.3-onbuild
|
||||
|
||||
This image includes multiple `ONBUILD` triggers which should cover most
|
||||
applications. The build will `COPY . /usr/src/app`, `RUN go get -d -v`, and `RUN
|
||||
This image includes multiple `ONBUILD` triggers which should cover most applications. The build will `COPY . /usr/src/app`, `RUN go get -d -v`, and `RUN
|
||||
go install -v`.
|
||||
|
||||
This image also includes the `CMD ["app"]` instruction which is the default command
|
||||
when running the image without arguments.
|
||||
This image also includes the `CMD ["app"]` instruction which is the default command when running the image without arguments.
|
||||
|
||||
You can then build and run the Docker image:
|
||||
|
||||
docker build -t my-golang-app .
|
||||
docker run -it --rm --name my-running-app my-golang-app
|
||||
docker build -t my-golang-app .
|
||||
docker run -it --rm --name my-running-app my-golang-app
|
||||
|
||||
## Compile your app inside the Docker container
|
||||
|
||||
There may be occasions where it is not appropriate to run your app inside a
|
||||
container. To compile, but not run your app inside the Docker instance, you can
|
||||
write something like:
|
||||
There may be occasions where it is not appropriate to run your app inside a container. To compile, but not run your app inside the Docker instance, you can write something like:
|
||||
|
||||
docker run --rm -v "$PWD":/usr/src/myapp -w /usr/src/myapp golang:1.3 go build -v
|
||||
docker run --rm -v "$PWD":/usr/src/myapp -w /usr/src/myapp golang:1.3 go build -v
|
||||
|
||||
This will add your current directory as a volume to the container, set the
|
||||
working directory to the volume, and run the command `go build` which will tell
|
||||
go to compile the project in the working directory and output the executable to
|
||||
`myapp`. Alternatively, if you have a `Makefile`, you can run the `make` command
|
||||
inside your container.
|
||||
This will add your current directory as a volume to the container, set the working directory to the volume, and run the command `go build` which will tell go to compile the project in the working directory and output the executable to `myapp`. Alternatively, if you have a `Makefile`, you can run the `make` command inside your container.
|
||||
|
||||
docker run --rm -v "$PWD":/usr/src/myapp -w /usr/src/myapp golang:1.3 make
|
||||
docker run --rm -v "$PWD":/usr/src/myapp -w /usr/src/myapp golang:1.3 make
|
||||
|
||||
## Cross-compile your app inside the Docker container
|
||||
|
||||
If you need to compile your application for a platform other than `linux/amd64`
|
||||
(such as `windows/386`), this can be easily accomplished with the provided
|
||||
`cross` tags:
|
||||
If you need to compile your application for a platform other than `linux/amd64` (such as `windows/386`), this can be easily accomplished with the provided `cross` tags:
|
||||
|
||||
docker run --rm -v "$PWD":/usr/src/myapp -w /usr/src/myapp -e GOOS=windows -e GOARCH=386 golang:1.3-cross go build -v
|
||||
docker run --rm -v "$PWD":/usr/src/myapp -w /usr/src/myapp -e GOOS=windows -e GOARCH=386 golang:1.3-cross go build -v
|
||||
|
||||
Alternatively, you can build for multiple platforms at once:
|
||||
|
||||
docker run --rm -it -v "$PWD":/usr/src/myapp -w /usr/src/myapp golang:1.3-cross bash
|
||||
$ for GOOS in darwin linux; do
|
||||
> for GOARCH in 386 amd64; do
|
||||
> go build -v -o myapp-$GOOS-$GOARCH
|
||||
> done
|
||||
> done
|
||||
docker run --rm -it -v "$PWD":/usr/src/myapp -w /usr/src/myapp golang:1.3-cross bash
|
||||
$ for GOOS in darwin linux; do
|
||||
> for GOARCH in 386 amd64; do
|
||||
> go build -v -o myapp-$GOOS-$GOARCH
|
||||
> done
|
||||
> done
|
||||
|
|
|
|||
|
|
@ -1,2 +1 @@
|
|||
View [license information](http://golang.org/LICENSE)
|
||||
for the software contained in this image.
|
||||
View [license information](http://golang.org/LICENSE) for the software contained in this image.
|
||||
|
|
|
|||
|
|
@ -1,20 +1,13 @@
|
|||
# Supported tags and respective `Dockerfile` links
|
||||
|
||||
- [`1.4.26`, `1.4` (*1.4/Dockerfile*)](https://github.com/docker-library/haproxy/blob/0cd4f607087468b5b321acbbe27c69465b202ada/1.4/Dockerfile)
|
||||
- [`1.5.11`, `1.5`, `1`, `latest` (*1.5/Dockerfile*)](https://github.com/docker-library/haproxy/blob/0cd4f607087468b5b321acbbe27c69465b202ada/1.5/Dockerfile)
|
||||
- [`1.4.26`, `1.4` (*1.4/Dockerfile*)](https://github.com/docker-library/haproxy/blob/0cd4f607087468b5b321acbbe27c69465b202ada/1.4/Dockerfile)
|
||||
- [`1.5.11`, `1.5`, `1`, `latest` (*1.5/Dockerfile*)](https://github.com/docker-library/haproxy/blob/0cd4f607087468b5b321acbbe27c69465b202ada/1.5/Dockerfile)
|
||||
|
||||
For more information about this image and its history, please see the [relevant
|
||||
manifest file
|
||||
(`library/haproxy`)](https://github.com/docker-library/official-images/blob/master/library/haproxy)
|
||||
in the [`docker-library/official-images` GitHub
|
||||
repo](https://github.com/docker-library/official-images).
|
||||
For more information about this image and its history, please see the [relevant manifest file (`library/haproxy`)](https://github.com/docker-library/official-images/blob/master/library/haproxy) in the [`docker-library/official-images` GitHub repo](https://github.com/docker-library/official-images).
|
||||
|
||||
# What is HAProxy?
|
||||
|
||||
HAProxy is a free, open source high availability solution, providing load
|
||||
balancing and proxying for TCP and HTTP-based applications by spreading requests
|
||||
across multiple servers. It is written in C and has a reputation for being fast
|
||||
and efficient (in terms of processor and memory usage).
|
||||
HAProxy is a free, open source high availability solution, providing load balancing and proxying for TCP and HTTP-based applications by spreading requests across multiple servers. It is written in C and has a reputation for being fast and efficient (in terms of processor and memory usage).
|
||||
|
||||
> [wikipedia.org/wiki/HAProxy](https://en.wikipedia.org/wiki/HAProxy)
|
||||
|
||||
|
|
@ -22,34 +15,29 @@ and efficient (in terms of processor and memory usage).
|
|||
|
||||
# How to use this image
|
||||
|
||||
Since no two users of HAProxy are likely to configure it exactly alike, this
|
||||
image does not come with any default configuration.
|
||||
Since no two users of HAProxy are likely to configure it exactly alike, this image does not come with any default configuration.
|
||||
|
||||
Please refer to [upstream's excellent (and comprehensive)
|
||||
documentation](https://cbonte.github.io/haproxy-dconv/) on the subject of
|
||||
configuring HAProxy for your needs.
|
||||
Please refer to [upstream's excellent (and comprehensive) documentation](https://cbonte.github.io/haproxy-dconv/) on the subject of configuring HAProxy for your needs.
|
||||
|
||||
It is also worth checking out the [`examples/` directory from
|
||||
upstream](http://www.haproxy.org/git?p=haproxy-1.5.git;a=tree;f=examples).
|
||||
It is also worth checking out the [`examples/` directory from upstream](http://www.haproxy.org/git?p=haproxy-1.5.git;a=tree;f=examples).
|
||||
|
||||
## Create a `Dockerfile`
|
||||
|
||||
FROM haproxy:1.5
|
||||
COPY haproxy.cfg /usr/local/etc/haproxy/haproxy.cfg
|
||||
FROM haproxy:1.5
|
||||
COPY haproxy.cfg /usr/local/etc/haproxy/haproxy.cfg
|
||||
|
||||
Build and run:
|
||||
|
||||
docker build -t my-haproxy .
|
||||
docker run -d --name my-running-haproxy my-haproxy
|
||||
docker build -t my-haproxy .
|
||||
docker run -d --name my-running-haproxy my-haproxy
|
||||
|
||||
## Directly via bind mount
|
||||
|
||||
docker run -d --name my-running-haproxy -v /path/to/haproxy.cfg:/usr/local/etc/haproxy/haproxy.cfg:ro haproxy:1.5
|
||||
docker run -d --name my-running-haproxy -v /path/to/haproxy.cfg:/usr/local/etc/haproxy/haproxy.cfg:ro haproxy:1.5
|
||||
|
||||
# License
|
||||
|
||||
View [license information](http://www.haproxy.org/download/1.5/doc/LICENSE) for
|
||||
the software contained in this image.
|
||||
View [license information](http://www.haproxy.org/download/1.5/doc/LICENSE) for the software contained in this image.
|
||||
|
||||
# Supported Docker versions
|
||||
|
||||
|
|
@ -61,20 +49,12 @@ Support for older versions (down to 1.0) is provided on a best-effort basis.
|
|||
|
||||
## Issues
|
||||
|
||||
If you have any problems with or questions about this image, please contact us
|
||||
through a [GitHub issue](https://github.com/docker-library/haproxy/issues).
|
||||
If you have any problems with or questions about this image, please contact us through a [GitHub issue](https://github.com/docker-library/haproxy/issues).
|
||||
|
||||
You can also reach many of the official image maintainers via the
|
||||
`#docker-library` IRC channel on [Freenode](https://freenode.net).
|
||||
You can also reach many of the official image maintainers via the `#docker-library` IRC channel on [Freenode](https://freenode.net).
|
||||
|
||||
## Contributing
|
||||
|
||||
You are invited to contribute new features, fixes, or updates, large or small;
|
||||
we are always thrilled to receive pull requests, and do our best to process them
|
||||
as fast as we can.
|
||||
You are invited to contribute new features, fixes, or updates, large or small; we are always thrilled to receive pull requests, and do our best to process them as fast as we can.
|
||||
|
||||
Before you start to code, we recommend discussing your plans
|
||||
through a [GitHub issue](https://github.com/docker-library/haproxy/issues), especially for more ambitious
|
||||
contributions. This gives other contributors a chance to point you in the right
|
||||
direction, give you feedback on your design, and help you find out if someone
|
||||
else is working on the same thing.
|
||||
Before you start to code, we recommend discussing your plans through a [GitHub issue](https://github.com/docker-library/haproxy/issues), especially for more ambitious contributions. This gives other contributors a chance to point you in the right direction, give you feedback on your design, and help you find out if someone else is working on the same thing.
|
||||
|
|
|
|||
|
|
@ -1,9 +1,6 @@
|
|||
# What is HAProxy?
|
||||
|
||||
HAProxy is a free, open source high availability solution, providing load
|
||||
balancing and proxying for TCP and HTTP-based applications by spreading requests
|
||||
across multiple servers. It is written in C and has a reputation for being fast
|
||||
and efficient (in terms of processor and memory usage).
|
||||
HAProxy is a free, open source high availability solution, providing load balancing and proxying for TCP and HTTP-based applications by spreading requests across multiple servers. It is written in C and has a reputation for being fast and efficient (in terms of processor and memory usage).
|
||||
|
||||
> [wikipedia.org/wiki/HAProxy](https://en.wikipedia.org/wiki/HAProxy)
|
||||
|
||||
|
|
@ -11,26 +8,22 @@ and efficient (in terms of processor and memory usage).
|
|||
|
||||
# How to use this image
|
||||
|
||||
Since no two users of HAProxy are likely to configure it exactly alike, this
|
||||
image does not come with any default configuration.
|
||||
Since no two users of HAProxy are likely to configure it exactly alike, this image does not come with any default configuration.
|
||||
|
||||
Please refer to [upstream's excellent (and comprehensive)
|
||||
documentation](https://cbonte.github.io/haproxy-dconv/) on the subject of
|
||||
configuring HAProxy for your needs.
|
||||
Please refer to [upstream's excellent (and comprehensive) documentation](https://cbonte.github.io/haproxy-dconv/) on the subject of configuring HAProxy for your needs.
|
||||
|
||||
It is also worth checking out the [`examples/` directory from
|
||||
upstream](http://www.haproxy.org/git?p=haproxy-1.5.git;a=tree;f=examples).
|
||||
It is also worth checking out the [`examples/` directory from upstream](http://www.haproxy.org/git?p=haproxy-1.5.git;a=tree;f=examples).
|
||||
|
||||
## Create a `Dockerfile`
|
||||
|
||||
FROM haproxy:1.5
|
||||
COPY haproxy.cfg /usr/local/etc/haproxy/haproxy.cfg
|
||||
FROM haproxy:1.5
|
||||
COPY haproxy.cfg /usr/local/etc/haproxy/haproxy.cfg
|
||||
|
||||
Build and run:
|
||||
|
||||
docker build -t my-haproxy .
|
||||
docker run -d --name my-running-haproxy my-haproxy
|
||||
docker build -t my-haproxy .
|
||||
docker run -d --name my-running-haproxy my-haproxy
|
||||
|
||||
## Directly via bind mount
|
||||
|
||||
docker run -d --name my-running-haproxy -v /path/to/haproxy.cfg:/usr/local/etc/haproxy/haproxy.cfg:ro haproxy:1.5
|
||||
docker run -d --name my-running-haproxy -v /path/to/haproxy.cfg:/usr/local/etc/haproxy/haproxy.cfg:ro haproxy:1.5
|
||||
|
|
|
|||
|
|
@ -1,2 +1 @@
|
|||
View [license information](http://www.haproxy.org/download/1.5/doc/LICENSE) for
|
||||
the software contained in this image.
|
||||
View [license information](http://www.haproxy.org/download/1.5/doc/LICENSE) for the software contained in this image.
|
||||
|
|
|
|||
|
|
@ -1,48 +1,16 @@
|
|||
# Supported tags and respective `Dockerfile` links
|
||||
|
||||
- [`latest`, `7.8` (*7.8/Dockerfile*)](https://github.com/darinmorrison/docker-haskell/blob/399ec9abffb3c86d6747d7ab5dc40556d6de9e4b/7.8/Dockerfile)
|
||||
- [`latest`, `7.8` (*7.8/Dockerfile*)](https://github.com/darinmorrison/docker-haskell/blob/399ec9abffb3c86d6747d7ab5dc40556d6de9e4b/7.8/Dockerfile)
|
||||
|
||||
For more information about this image and its history, please see the [relevant
|
||||
manifest file
|
||||
(`library/haskell`)](https://github.com/docker-library/official-images/blob/master/library/haskell)
|
||||
in the [`docker-library/official-images` GitHub
|
||||
repo](https://github.com/docker-library/official-images).
|
||||
For more information about this image and its history, please see the [relevant manifest file (`library/haskell`)](https://github.com/docker-library/official-images/blob/master/library/haskell) in the [`docker-library/official-images` GitHub repo](https://github.com/docker-library/official-images).
|
||||
|
||||
# What is Haskell?
|
||||
|
||||
[Haskell](http://www.haskell.org) is a
|
||||
[lazy](http://en.wikibooks.org/wiki/Haskell/Laziness), functional,
|
||||
statically-typed programming language with advanced type system features such as
|
||||
higher-rank, higher-kinded parametric
|
||||
[polymorphism](http://en.wikibooks.org/wiki/Haskell/Polymorphism), monadic
|
||||
[effects](http://en.wikibooks.org/wiki/Haskell/Understanding_monads/IO),
|
||||
generalized algebraic data types
|
||||
([GADT](http://en.wikibooks.org/wiki/Haskell/GADT)s), flexible [type
|
||||
classes](http://en.wikibooks.org/wiki/Haskell/Advanced_type_classes), associated
|
||||
[type families](http://en.wikipedia.org/wiki/Type_family), and more.
|
||||
[Haskell](http://www.haskell.org) is a [lazy](http://en.wikibooks.org/wiki/Haskell/Laziness), functional, statically-typed programming language with advanced type system features such as higher-rank, higher-kinded parametric [polymorphism](http://en.wikibooks.org/wiki/Haskell/Polymorphism), monadic [effects](http://en.wikibooks.org/wiki/Haskell/Understanding_monads/IO), generalized algebraic data types ([GADT](http://en.wikibooks.org/wiki/Haskell/GADT)s), flexible [type classes](http://en.wikibooks.org/wiki/Haskell/Advanced_type_classes), associated [type families](http://en.wikipedia.org/wiki/Type_family), and more.
|
||||
|
||||
Haskell's [`ghc`](http://www.haskell.org/ghc) is a
|
||||
[portable](https://ghc.haskell.org/trac/ghc/wiki/Platforms),
|
||||
[optimizing](http://benchmarksgame.alioth.debian.org/u64q/haskell.php) compiler
|
||||
with a foreign-function interface
|
||||
([FFI](http://en.wikibooks.org/wiki/Haskell/FFI)), an [LLVM
|
||||
backend](https://www.haskell.org/ghc/docs/7.8.3/html/users_guide/code-generators.html),
|
||||
and sophisticated runtime support for
|
||||
[concurrency](http://en.wikibooks.org/wiki/Haskell/Concurrency),
|
||||
explicit/implicit [parallelism](http://community.haskell.org/~simonmar/pcph/),
|
||||
runtime [profiling](http://www.haskell.org/haskellwiki/ThreadScope), etc. Other
|
||||
Haskell tools like
|
||||
[`criterion`](http://www.serpentine.com/criterion/tutorial.html),
|
||||
[`quickcheck`](https://www.fpcomplete.com/user/pbv/an-introduction-to-quickcheck-testing),
|
||||
[`hpc`](http://www.haskell.org/haskellwiki/Haskell_program_coverage#Examples),
|
||||
and [`haddock`](http://en.wikipedia.org/wiki/Haddock_(software)) provide
|
||||
advanced benchmarking, property-based testing, code coverage, and documentation
|
||||
generation.
|
||||
Haskell's [`ghc`](http://www.haskell.org/ghc) is a [portable](https://ghc.haskell.org/trac/ghc/wiki/Platforms), [optimizing](http://benchmarksgame.alioth.debian.org/u64q/haskell.php) compiler with a foreign-function interface ([FFI](http://en.wikibooks.org/wiki/Haskell/FFI)), an [LLVM backend](https://www.haskell.org/ghc/docs/7.8.3/html/users_guide/code-generators.html), and sophisticated runtime support for [concurrency](http://en.wikibooks.org/wiki/Haskell/Concurrency), explicit/implicit [parallelism](http://community.haskell.org/~simonmar/pcph/), runtime [profiling](http://www.haskell.org/haskellwiki/ThreadScope), etc. Other Haskell tools like [`criterion`](http://www.serpentine.com/criterion/tutorial.html), [`quickcheck`](https://www.fpcomplete.com/user/pbv/an-introduction-to-quickcheck-testing), [`hpc`](http://www.haskell.org/haskellwiki/Haskell_program_coverage#Examples), and [`haddock`](http://en.wikipedia.org/wiki/Haddock_%28software%29) provide advanced benchmarking, property-based testing, code coverage, and documentation generation.
|
||||
|
||||
A large number of production-quality Haskell libraries are available from
|
||||
[Hackage](https://hackage.haskell.org). The
|
||||
[`cabal`](https://www.fpcomplete.com/user/simonmichael/how-to-cabal-install)
|
||||
tool fetches packages and builds projects using the Hackage ecosystem.
|
||||
A large number of production-quality Haskell libraries are available from [Hackage](https://hackage.haskell.org). The [`cabal`](https://www.fpcomplete.com/user/simonmichael/how-to-cabal-install) tool fetches packages and builds projects using the Hackage ecosystem.
|
||||
|
||||

|
||||
|
||||
|
|
@ -50,67 +18,60 @@ tool fetches packages and builds projects using the Hackage ecosystem.
|
|||
|
||||
This image ships a minimal Haskell toolchain with the following packages:
|
||||
|
||||
* `ghc`
|
||||
* `alex`
|
||||
* `cabal-install`
|
||||
* `happy`
|
||||
- `ghc`
|
||||
- `alex`
|
||||
- `cabal-install`
|
||||
- `happy`
|
||||
|
||||
## How to use this image
|
||||
|
||||
Start an interactive interpreter session with `ghci`:
|
||||
|
||||
$ docker run -it --rm haskell:7.8
|
||||
GHCi, version 7.8.3: http://www.haskell.org/ghc/ :? for help
|
||||
Loading package ghc-prim ... linking ... done.
|
||||
Loading package integer-gmp ... linking ... done.
|
||||
Loading package base ... linking ... done.
|
||||
Prelude>
|
||||
$ docker run -it --rm haskell:7.8
|
||||
GHCi, version 7.8.3: http://www.haskell.org/ghc/ :? for help
|
||||
Loading package ghc-prim ... linking ... done.
|
||||
Loading package integer-gmp ... linking ... done.
|
||||
Loading package base ... linking ... done.
|
||||
Prelude>
|
||||
|
||||
Dockerize a [Hackage](http://hackage.haskell.org) app with a Dockerfile
|
||||
inheriting from the base image:
|
||||
Dockerize a [Hackage](http://hackage.haskell.org) app with a Dockerfile inheriting from the base image:
|
||||
|
||||
FROM haskell:7.8
|
||||
RUN cabal update && cabal install MazesOfMonad
|
||||
VOLUME /root/.MazesOfMonad
|
||||
ENTRYPOINT ["/root/.cabal/bin/mazesofmonad"]
|
||||
FROM haskell:7.8
|
||||
RUN cabal update && cabal install MazesOfMonad
|
||||
VOLUME /root/.MazesOfMonad
|
||||
ENTRYPOINT ["/root/.cabal/bin/mazesofmonad"]
|
||||
|
||||
Iteratively develop then ship a Haskell app with a Dockerfile utilizing the
|
||||
build cache:
|
||||
Iteratively develop then ship a Haskell app with a Dockerfile utilizing the build cache:
|
||||
|
||||
FROM haskell:7.8
|
||||
|
||||
RUN cabal update
|
||||
|
||||
# Add .cabal file
|
||||
ADD ./server/snap-example.cabal /opt/server/snap-example.cabal
|
||||
|
||||
# Docker will cache this command as a layer, freeing us up to
|
||||
# modify source code without re-installing dependencies
|
||||
RUN cd /opt/server && cabal install --only-dependencies -j4
|
||||
|
||||
# Add and Install Application Code
|
||||
ADD ./server /opt/server
|
||||
RUN cd /opt/server && cabal install
|
||||
|
||||
# Add installed cabal executables to PATH
|
||||
ENV PATH /root/.cabal/bin:$PATH
|
||||
|
||||
# Default Command for Container
|
||||
WORKDIR /opt/server
|
||||
CMD ["snap-example"]
|
||||
FROM haskell:7.8
|
||||
|
||||
RUN cabal update
|
||||
|
||||
# Add .cabal file
|
||||
ADD ./server/snap-example.cabal /opt/server/snap-example.cabal
|
||||
|
||||
# Docker will cache this command as a layer, freeing us up to
|
||||
# modify source code without re-installing dependencies
|
||||
RUN cd /opt/server && cabal install --only-dependencies -j4
|
||||
|
||||
# Add and Install Application Code
|
||||
ADD ./server /opt/server
|
||||
RUN cd /opt/server && cabal install
|
||||
|
||||
# Add installed cabal executables to PATH
|
||||
ENV PATH /root/.cabal/bin:$PATH
|
||||
|
||||
# Default Command for Container
|
||||
WORKDIR /opt/server
|
||||
CMD ["snap-example"]
|
||||
|
||||
### Examples
|
||||
|
||||
See the application snippet above in more detail in the [example snap
|
||||
application](https://github.com/darinmorrison/docker-haskell/tree/master/examples/7.8.3/snap).
|
||||
See the application snippet above in more detail in the [example snap application](https://github.com/darinmorrison/docker-haskell/tree/master/examples/7.8.3/snap).
|
||||
|
||||
# License
|
||||
|
||||
This image is licensed under the MIT License (see
|
||||
[LICENSE](https://github.com/darinmorrison/docker-haskell/blob/master/LICENSE)),
|
||||
and includes software licensed under the
|
||||
[Glasgow Haskell Compiler License](https://www.haskell.org/ghc/license)
|
||||
(BSD-style).
|
||||
This image is licensed under the MIT License (see [LICENSE](https://github.com/darinmorrison/docker-haskell/blob/master/LICENSE)), and includes software licensed under the [Glasgow Haskell Compiler License](https://www.haskell.org/ghc/license) (BSD-style).
|
||||
|
||||
# Supported Docker versions
|
||||
|
||||
|
|
@ -122,20 +83,12 @@ Support for older versions (down to 1.0) is provided on a best-effort basis.
|
|||
|
||||
## Issues
|
||||
|
||||
If you have any problems with or questions about this image, please contact us
|
||||
through a [GitHub issue](https://github.com/darinmorrison/docker-haskell/issues).
|
||||
If you have any problems with or questions about this image, please contact us through a [GitHub issue](https://github.com/darinmorrison/docker-haskell/issues).
|
||||
|
||||
You can also reach many of the official image maintainers via the
|
||||
`#docker-library` IRC channel on [Freenode](https://freenode.net).
|
||||
You can also reach many of the official image maintainers via the `#docker-library` IRC channel on [Freenode](https://freenode.net).
|
||||
|
||||
## Contributing
|
||||
|
||||
You are invited to contribute new features, fixes, or updates, large or small;
|
||||
we are always thrilled to receive pull requests, and do our best to process them
|
||||
as fast as we can.
|
||||
You are invited to contribute new features, fixes, or updates, large or small; we are always thrilled to receive pull requests, and do our best to process them as fast as we can.
|
||||
|
||||
Before you start to code, we recommend discussing your plans
|
||||
through a [GitHub issue](https://github.com/darinmorrison/docker-haskell/issues), especially for more ambitious
|
||||
contributions. This gives other contributors a chance to point you in the right
|
||||
direction, give you feedback on your design, and help you find out if someone
|
||||
else is working on the same thing.
|
||||
Before you start to code, we recommend discussing your plans through a [GitHub issue](https://github.com/darinmorrison/docker-haskell/issues), especially for more ambitious contributions. This gives other contributors a chance to point you in the right direction, give you feedback on your design, and help you find out if someone else is working on the same thing.
|
||||
|
|
|
|||
|
|
@ -1,38 +1,10 @@
|
|||
# What is Haskell?
|
||||
|
||||
[Haskell](http://www.haskell.org) is a
|
||||
[lazy](http://en.wikibooks.org/wiki/Haskell/Laziness), functional,
|
||||
statically-typed programming language with advanced type system features such as
|
||||
higher-rank, higher-kinded parametric
|
||||
[polymorphism](http://en.wikibooks.org/wiki/Haskell/Polymorphism), monadic
|
||||
[effects](http://en.wikibooks.org/wiki/Haskell/Understanding_monads/IO),
|
||||
generalized algebraic data types
|
||||
([GADT](http://en.wikibooks.org/wiki/Haskell/GADT)s), flexible [type
|
||||
classes](http://en.wikibooks.org/wiki/Haskell/Advanced_type_classes), associated
|
||||
[type families](http://en.wikipedia.org/wiki/Type_family), and more.
|
||||
[Haskell](http://www.haskell.org) is a [lazy](http://en.wikibooks.org/wiki/Haskell/Laziness), functional, statically-typed programming language with advanced type system features such as higher-rank, higher-kinded parametric [polymorphism](http://en.wikibooks.org/wiki/Haskell/Polymorphism), monadic [effects](http://en.wikibooks.org/wiki/Haskell/Understanding_monads/IO), generalized algebraic data types ([GADT](http://en.wikibooks.org/wiki/Haskell/GADT)s), flexible [type classes](http://en.wikibooks.org/wiki/Haskell/Advanced_type_classes), associated [type families](http://en.wikipedia.org/wiki/Type_family), and more.
|
||||
|
||||
Haskell's [`ghc`](http://www.haskell.org/ghc) is a
|
||||
[portable](https://ghc.haskell.org/trac/ghc/wiki/Platforms),
|
||||
[optimizing](http://benchmarksgame.alioth.debian.org/u64q/haskell.php) compiler
|
||||
with a foreign-function interface
|
||||
([FFI](http://en.wikibooks.org/wiki/Haskell/FFI)), an [LLVM
|
||||
backend](https://www.haskell.org/ghc/docs/7.8.3/html/users_guide/code-generators.html),
|
||||
and sophisticated runtime support for
|
||||
[concurrency](http://en.wikibooks.org/wiki/Haskell/Concurrency),
|
||||
explicit/implicit [parallelism](http://community.haskell.org/~simonmar/pcph/),
|
||||
runtime [profiling](http://www.haskell.org/haskellwiki/ThreadScope), etc. Other
|
||||
Haskell tools like
|
||||
[`criterion`](http://www.serpentine.com/criterion/tutorial.html),
|
||||
[`quickcheck`](https://www.fpcomplete.com/user/pbv/an-introduction-to-quickcheck-testing),
|
||||
[`hpc`](http://www.haskell.org/haskellwiki/Haskell_program_coverage#Examples),
|
||||
and [`haddock`](http://en.wikipedia.org/wiki/Haddock_(software)) provide
|
||||
advanced benchmarking, property-based testing, code coverage, and documentation
|
||||
generation.
|
||||
Haskell's [`ghc`](http://www.haskell.org/ghc) is a [portable](https://ghc.haskell.org/trac/ghc/wiki/Platforms), [optimizing](http://benchmarksgame.alioth.debian.org/u64q/haskell.php) compiler with a foreign-function interface ([FFI](http://en.wikibooks.org/wiki/Haskell/FFI)), an [LLVM backend](https://www.haskell.org/ghc/docs/7.8.3/html/users_guide/code-generators.html), and sophisticated runtime support for [concurrency](http://en.wikibooks.org/wiki/Haskell/Concurrency), explicit/implicit [parallelism](http://community.haskell.org/~simonmar/pcph/), runtime [profiling](http://www.haskell.org/haskellwiki/ThreadScope), etc. Other Haskell tools like [`criterion`](http://www.serpentine.com/criterion/tutorial.html), [`quickcheck`](https://www.fpcomplete.com/user/pbv/an-introduction-to-quickcheck-testing), [`hpc`](http://www.haskell.org/haskellwiki/Haskell_program_coverage#Examples), and [`haddock`](http://en.wikipedia.org/wiki/Haddock_%28software%29) provide advanced benchmarking, property-based testing, code coverage, and documentation generation.
|
||||
|
||||
A large number of production-quality Haskell libraries are available from
|
||||
[Hackage](https://hackage.haskell.org). The
|
||||
[`cabal`](https://www.fpcomplete.com/user/simonmichael/how-to-cabal-install)
|
||||
tool fetches packages and builds projects using the Hackage ecosystem.
|
||||
A large number of production-quality Haskell libraries are available from [Hackage](https://hackage.haskell.org). The [`cabal`](https://www.fpcomplete.com/user/simonmichael/how-to-cabal-install) tool fetches packages and builds projects using the Hackage ecosystem.
|
||||
|
||||
%%LOGO%%
|
||||
|
||||
|
|
@ -40,56 +12,53 @@ tool fetches packages and builds projects using the Hackage ecosystem.
|
|||
|
||||
This image ships a minimal Haskell toolchain with the following packages:
|
||||
|
||||
* `ghc`
|
||||
* `alex`
|
||||
* `cabal-install`
|
||||
* `happy`
|
||||
- `ghc`
|
||||
- `alex`
|
||||
- `cabal-install`
|
||||
- `happy`
|
||||
|
||||
## How to use this image
|
||||
|
||||
Start an interactive interpreter session with `ghci`:
|
||||
|
||||
$ docker run -it --rm haskell:7.8
|
||||
GHCi, version 7.8.3: http://www.haskell.org/ghc/ :? for help
|
||||
Loading package ghc-prim ... linking ... done.
|
||||
Loading package integer-gmp ... linking ... done.
|
||||
Loading package base ... linking ... done.
|
||||
Prelude>
|
||||
$ docker run -it --rm haskell:7.8
|
||||
GHCi, version 7.8.3: http://www.haskell.org/ghc/ :? for help
|
||||
Loading package ghc-prim ... linking ... done.
|
||||
Loading package integer-gmp ... linking ... done.
|
||||
Loading package base ... linking ... done.
|
||||
Prelude>
|
||||
|
||||
Dockerize a [Hackage](http://hackage.haskell.org) app with a Dockerfile
|
||||
inheriting from the base image:
|
||||
Dockerize a [Hackage](http://hackage.haskell.org) app with a Dockerfile inheriting from the base image:
|
||||
|
||||
FROM haskell:7.8
|
||||
RUN cabal update && cabal install MazesOfMonad
|
||||
VOLUME /root/.MazesOfMonad
|
||||
ENTRYPOINT ["/root/.cabal/bin/mazesofmonad"]
|
||||
FROM haskell:7.8
|
||||
RUN cabal update && cabal install MazesOfMonad
|
||||
VOLUME /root/.MazesOfMonad
|
||||
ENTRYPOINT ["/root/.cabal/bin/mazesofmonad"]
|
||||
|
||||
Iteratively develop then ship a Haskell app with a Dockerfile utilizing the
|
||||
build cache:
|
||||
Iteratively develop then ship a Haskell app with a Dockerfile utilizing the build cache:
|
||||
|
||||
FROM haskell:7.8
|
||||
|
||||
RUN cabal update
|
||||
|
||||
# Add .cabal file
|
||||
ADD ./server/snap-example.cabal /opt/server/snap-example.cabal
|
||||
|
||||
# Docker will cache this command as a layer, freeing us up to
|
||||
# modify source code without re-installing dependencies
|
||||
RUN cd /opt/server && cabal install --only-dependencies -j4
|
||||
|
||||
# Add and Install Application Code
|
||||
ADD ./server /opt/server
|
||||
RUN cd /opt/server && cabal install
|
||||
|
||||
# Add installed cabal executables to PATH
|
||||
ENV PATH /root/.cabal/bin:$PATH
|
||||
|
||||
# Default Command for Container
|
||||
WORKDIR /opt/server
|
||||
CMD ["snap-example"]
|
||||
FROM haskell:7.8
|
||||
|
||||
RUN cabal update
|
||||
|
||||
# Add .cabal file
|
||||
ADD ./server/snap-example.cabal /opt/server/snap-example.cabal
|
||||
|
||||
# Docker will cache this command as a layer, freeing us up to
|
||||
# modify source code without re-installing dependencies
|
||||
RUN cd /opt/server && cabal install --only-dependencies -j4
|
||||
|
||||
# Add and Install Application Code
|
||||
ADD ./server /opt/server
|
||||
RUN cd /opt/server && cabal install
|
||||
|
||||
# Add installed cabal executables to PATH
|
||||
ENV PATH /root/.cabal/bin:$PATH
|
||||
|
||||
# Default Command for Container
|
||||
WORKDIR /opt/server
|
||||
CMD ["snap-example"]
|
||||
|
||||
### Examples
|
||||
|
||||
See the application snippet above in more detail in the [example snap
|
||||
application](https://github.com/darinmorrison/docker-haskell/tree/master/examples/7.8.3/snap).
|
||||
See the application snippet above in more detail in the [example snap application](https://github.com/darinmorrison/docker-haskell/tree/master/examples/7.8.3/snap).
|
||||
|
|
|
|||
|
|
@ -1,5 +1 @@
|
|||
This image is licensed under the MIT License (see
|
||||
[LICENSE](https://github.com/darinmorrison/docker-haskell/blob/master/LICENSE)),
|
||||
and includes software licensed under the
|
||||
[Glasgow Haskell Compiler License](https://www.haskell.org/ghc/license)
|
||||
(BSD-style).
|
||||
This image is licensed under the MIT License (see [LICENSE](https://github.com/darinmorrison/docker-haskell/blob/master/LICENSE)), and includes software licensed under the [Glasgow Haskell Compiler License](https://www.haskell.org/ghc/license) (BSD-style).
|
||||
|
|
|
|||
|
|
@ -1,37 +1,33 @@
|
|||
# Supported tags and respective `Dockerfile` links
|
||||
|
||||
- [`latest` (*Dockerfile*)](https://github.com/docker-library/hello-world/blob/b7a78b7ccca62cc478919b101f3ab1334899df2b/Dockerfile)
|
||||
- [`latest` (*Dockerfile*)](https://github.com/docker-library/hello-world/blob/b7a78b7ccca62cc478919b101f3ab1334899df2b/Dockerfile)
|
||||
|
||||
For more information about this image and its history, please see the [relevant
|
||||
manifest file
|
||||
(`library/hello-world`)](https://github.com/docker-library/official-images/blob/master/library/hello-world)
|
||||
in the [`docker-library/official-images` GitHub
|
||||
repo](https://github.com/docker-library/official-images).
|
||||
For more information about this image and its history, please see the [relevant manifest file (`library/hello-world`)](https://github.com/docker-library/official-images/blob/master/library/hello-world) in the [`docker-library/official-images` GitHub repo](https://github.com/docker-library/official-images).
|
||||
|
||||
# Example output
|
||||
|
||||
$ docker run hello-world
|
||||
Hello from Docker.
|
||||
This message shows that your installation appears to be working correctly.
|
||||
|
||||
To generate this message, Docker took the following steps:
|
||||
1. The Docker client contacted the Docker daemon.
|
||||
2. The Docker daemon pulled the "hello-world" image from the Docker Hub.
|
||||
(Assuming it was not already locally available.)
|
||||
3. The Docker daemon created a new container from that image which runs the
|
||||
executable that produces the output you are currently reading.
|
||||
4. The Docker daemon streamed that output to the Docker client, which sent it
|
||||
to your terminal.
|
||||
|
||||
To try something more ambitious, you can run an Ubuntu container with:
|
||||
$ docker run -it ubuntu bash
|
||||
|
||||
For more examples and ideas, visit:
|
||||
http://docs.docker.com/userguide/
|
||||
|
||||
$ docker images hello-world
|
||||
REPOSITORY TAG IMAGE ID VIRTUAL SIZE
|
||||
hello-world latest e45a5af57b00 910 B
|
||||
$ docker run hello-world
|
||||
Hello from Docker.
|
||||
This message shows that your installation appears to be working correctly.
|
||||
|
||||
To generate this message, Docker took the following steps:
|
||||
1. The Docker client contacted the Docker daemon.
|
||||
2. The Docker daemon pulled the "hello-world" image from the Docker Hub.
|
||||
(Assuming it was not already locally available.)
|
||||
3. The Docker daemon created a new container from that image which runs the
|
||||
executable that produces the output you are currently reading.
|
||||
4. The Docker daemon streamed that output to the Docker client, which sent it
|
||||
to your terminal.
|
||||
|
||||
To try something more ambitious, you can run an Ubuntu container with:
|
||||
$ docker run -it ubuntu bash
|
||||
|
||||
For more examples and ideas, visit:
|
||||
http://docs.docker.com/userguide/
|
||||
|
||||
$ docker images hello-world
|
||||
REPOSITORY TAG IMAGE ID VIRTUAL SIZE
|
||||
hello-world latest e45a5af57b00 910 B
|
||||
|
||||

|
||||
|
||||
|
|
@ -45,20 +41,12 @@ Support for older versions (down to 1.0) is provided on a best-effort basis.
|
|||
|
||||
## Issues
|
||||
|
||||
If you have any problems with or questions about this image, please contact us
|
||||
through a [GitHub issue](https://github.com/docker-library/hello-world/issues).
|
||||
If you have any problems with or questions about this image, please contact us through a [GitHub issue](https://github.com/docker-library/hello-world/issues).
|
||||
|
||||
You can also reach many of the official image maintainers via the
|
||||
`#docker-library` IRC channel on [Freenode](https://freenode.net).
|
||||
You can also reach many of the official image maintainers via the `#docker-library` IRC channel on [Freenode](https://freenode.net).
|
||||
|
||||
## Contributing
|
||||
|
||||
You are invited to contribute new features, fixes, or updates, large or small;
|
||||
we are always thrilled to receive pull requests, and do our best to process them
|
||||
as fast as we can.
|
||||
You are invited to contribute new features, fixes, or updates, large or small; we are always thrilled to receive pull requests, and do our best to process them as fast as we can.
|
||||
|
||||
Before you start to code, we recommend discussing your plans
|
||||
through a [GitHub issue](https://github.com/docker-library/hello-world/issues), especially for more ambitious
|
||||
contributions. This gives other contributors a chance to point you in the right
|
||||
direction, give you feedback on your design, and help you find out if someone
|
||||
else is working on the same thing.
|
||||
Before you start to code, we recommend discussing your plans through a [GitHub issue](https://github.com/docker-library/hello-world/issues), especially for more ambitious contributions. This gives other contributors a chance to point you in the right direction, give you feedback on your design, and help you find out if someone else is working on the same thing.
|
||||
|
|
|
|||
|
|
@ -1,26 +1,26 @@
|
|||
# Example output
|
||||
|
||||
$ docker run hello-world
|
||||
Hello from Docker.
|
||||
This message shows that your installation appears to be working correctly.
|
||||
|
||||
To generate this message, Docker took the following steps:
|
||||
1. The Docker client contacted the Docker daemon.
|
||||
2. The Docker daemon pulled the "hello-world" image from the Docker Hub.
|
||||
(Assuming it was not already locally available.)
|
||||
3. The Docker daemon created a new container from that image which runs the
|
||||
executable that produces the output you are currently reading.
|
||||
4. The Docker daemon streamed that output to the Docker client, which sent it
|
||||
to your terminal.
|
||||
|
||||
To try something more ambitious, you can run an Ubuntu container with:
|
||||
$ docker run -it ubuntu bash
|
||||
|
||||
For more examples and ideas, visit:
|
||||
http://docs.docker.com/userguide/
|
||||
|
||||
$ docker images hello-world
|
||||
REPOSITORY TAG IMAGE ID VIRTUAL SIZE
|
||||
hello-world latest e45a5af57b00 910 B
|
||||
$ docker run hello-world
|
||||
Hello from Docker.
|
||||
This message shows that your installation appears to be working correctly.
|
||||
|
||||
To generate this message, Docker took the following steps:
|
||||
1. The Docker client contacted the Docker daemon.
|
||||
2. The Docker daemon pulled the "hello-world" image from the Docker Hub.
|
||||
(Assuming it was not already locally available.)
|
||||
3. The Docker daemon created a new container from that image which runs the
|
||||
executable that produces the output you are currently reading.
|
||||
4. The Docker daemon streamed that output to the Docker client, which sent it
|
||||
to your terminal.
|
||||
|
||||
To try something more ambitious, you can run an Ubuntu container with:
|
||||
$ docker run -it ubuntu bash
|
||||
|
||||
For more examples and ideas, visit:
|
||||
http://docs.docker.com/userguide/
|
||||
|
||||
$ docker images hello-world
|
||||
REPOSITORY TAG IMAGE ID VIRTUAL SIZE
|
||||
hello-world latest e45a5af57b00 910 B
|
||||
|
||||
%%LOGO%%
|
||||
|
|
|
|||
|
|
@ -14,7 +14,7 @@ echo
|
|||
echo
|
||||
echo '$ docker images hello-world'
|
||||
docker images hello-world | awk -F' +' '{ print $1"\t"$2"\t"$3"\t"$5 }' | column -t -s$'\t'
|
||||
} | sed 's/^/ /'
|
||||
} | sed 's/^/\t/'
|
||||
|
||||
echo
|
||||
echo '%%LOGO%%'
|
||||
|
|
|
|||
|
|
@ -1,27 +1,14 @@
|
|||
# Supported tags and respective `Dockerfile` links
|
||||
|
||||
- [`latest`, `0.3.1` (*Dockerfile*)](https://github.com/dotcloud/hipache/blob/0.3.1/Dockerfile)
|
||||
- [`latest`, `0.3.1` (*Dockerfile*)](https://github.com/dotcloud/hipache/blob/0.3.1/Dockerfile)
|
||||
|
||||
For more information about this image and its history, please see the [relevant
|
||||
manifest file
|
||||
(`library/hipache`)](https://github.com/docker-library/official-images/blob/master/library/hipache)
|
||||
in the [`docker-library/official-images` GitHub
|
||||
repo](https://github.com/docker-library/official-images).
|
||||
For more information about this image and its history, please see the [relevant manifest file (`library/hipache`)](https://github.com/docker-library/official-images/blob/master/library/hipache) in the [`docker-library/official-images` GitHub repo](https://github.com/docker-library/official-images).
|
||||
|
||||
# What is Hipache?
|
||||
|
||||
**Hipache** (pronounced `hɪ'pætʃɪ`) is a distributed proxy designed to route
|
||||
high volumes of http and websocket traffic to unusually large numbers of virtual
|
||||
hosts, in a highly dynamic topology where backends are added and removed several
|
||||
times per second. It is particularly well-suited for PaaS
|
||||
(platform-as-a-service) and other environments that are both business-critical
|
||||
and multi-tenant.
|
||||
**Hipache** (pronounced `hɪ'pætʃɪ`) is a distributed proxy designed to route high volumes of http and websocket traffic to unusually large numbers of virtual hosts, in a highly dynamic topology where backends are added and removed several times per second. It is particularly well-suited for PaaS (platform-as-a-service) and other environments that are both business-critical and multi-tenant.
|
||||
|
||||
Hipache was originally developed at [dotCloud](http://www.dotcloud.com), a
|
||||
popular platform-as-a-service, to replace its first-generation routing layer
|
||||
based on a heavily instrumented nginx deployment. It currently serves production
|
||||
traffic for tens of thousands of applications hosted on dotCloud. Hipache is
|
||||
based on the node-http-proxy library.
|
||||
Hipache was originally developed at [dotCloud](http://www.dotcloud.com), a popular platform-as-a-service, to replace its first-generation routing layer based on a heavily instrumented nginx deployment. It currently serves production traffic for tens of thousands of applications hosted on dotCloud. Hipache is based on the node-http-proxy library.
|
||||
|
||||
# Supported Docker versions
|
||||
|
||||
|
|
@ -33,20 +20,12 @@ Support for older versions (down to 1.0) is provided on a best-effort basis.
|
|||
|
||||
## Issues
|
||||
|
||||
If you have any problems with or questions about this image, please contact us
|
||||
through a [GitHub issue](https://github.com/dotcloud/hipache/issues).
|
||||
If you have any problems with or questions about this image, please contact us through a [GitHub issue](https://github.com/dotcloud/hipache/issues).
|
||||
|
||||
You can also reach many of the official image maintainers via the
|
||||
`#docker-library` IRC channel on [Freenode](https://freenode.net).
|
||||
You can also reach many of the official image maintainers via the `#docker-library` IRC channel on [Freenode](https://freenode.net).
|
||||
|
||||
## Contributing
|
||||
|
||||
You are invited to contribute new features, fixes, or updates, large or small;
|
||||
we are always thrilled to receive pull requests, and do our best to process them
|
||||
as fast as we can.
|
||||
You are invited to contribute new features, fixes, or updates, large or small; we are always thrilled to receive pull requests, and do our best to process them as fast as we can.
|
||||
|
||||
Before you start to code, we recommend discussing your plans
|
||||
through a [GitHub issue](https://github.com/dotcloud/hipache/issues), especially for more ambitious
|
||||
contributions. This gives other contributors a chance to point you in the right
|
||||
direction, give you feedback on your design, and help you find out if someone
|
||||
else is working on the same thing.
|
||||
Before you start to code, we recommend discussing your plans through a [GitHub issue](https://github.com/dotcloud/hipache/issues), especially for more ambitious contributions. This gives other contributors a chance to point you in the right direction, give you feedback on your design, and help you find out if someone else is working on the same thing.
|
||||
|
|
|
|||
|
|
@ -1,14 +1,5 @@
|
|||
# What is Hipache?
|
||||
|
||||
**Hipache** (pronounced `hɪ'pætʃɪ`) is a distributed proxy designed to route
|
||||
high volumes of http and websocket traffic to unusually large numbers of virtual
|
||||
hosts, in a highly dynamic topology where backends are added and removed several
|
||||
times per second. It is particularly well-suited for PaaS
|
||||
(platform-as-a-service) and other environments that are both business-critical
|
||||
and multi-tenant.
|
||||
**Hipache** (pronounced `hɪ'pætʃɪ`) is a distributed proxy designed to route high volumes of http and websocket traffic to unusually large numbers of virtual hosts, in a highly dynamic topology where backends are added and removed several times per second. It is particularly well-suited for PaaS (platform-as-a-service) and other environments that are both business-critical and multi-tenant.
|
||||
|
||||
Hipache was originally developed at [dotCloud](http://www.dotcloud.com), a
|
||||
popular platform-as-a-service, to replace its first-generation routing layer
|
||||
based on a heavily instrumented nginx deployment. It currently serves production
|
||||
traffic for tens of thousands of applications hosted on dotCloud. Hipache is
|
||||
based on the node-http-proxy library.
|
||||
Hipache was originally developed at [dotCloud](http://www.dotcloud.com), a popular platform-as-a-service, to replace its first-generation routing layer based on a heavily instrumented nginx deployment. It currently serves production traffic for tens of thousands of applications hosted on dotCloud. Hipache is based on the node-http-proxy library.
|
||||
|
|
|
|||
|
|
@ -1,22 +1,13 @@
|
|||
# Supported tags and respective `Dockerfile` links
|
||||
|
||||
- [`2.2.29`, `2.2` (*2.2/Dockerfile*)](https://github.com/docker-library/httpd/blob/047048112cb4f8997b1a51f4295f44584b436a83/2.2/Dockerfile)
|
||||
- [`2.4.12`, `2.4`, `2`, `latest` (*2.4/Dockerfile*)](https://github.com/docker-library/httpd/blob/9c77579dcf981f060732bf41845edea8e39a130b/2.4/Dockerfile)
|
||||
- [`2.2.29`, `2.2` (*2.2/Dockerfile*)](https://github.com/docker-library/httpd/blob/047048112cb4f8997b1a51f4295f44584b436a83/2.2/Dockerfile)
|
||||
- [`2.4.12`, `2.4`, `2`, `latest` (*2.4/Dockerfile*)](https://github.com/docker-library/httpd/blob/9c77579dcf981f060732bf41845edea8e39a130b/2.4/Dockerfile)
|
||||
|
||||
For more information about this image and its history, please see the [relevant
|
||||
manifest file
|
||||
(`library/httpd`)](https://github.com/docker-library/official-images/blob/master/library/httpd)
|
||||
in the [`docker-library/official-images` GitHub
|
||||
repo](https://github.com/docker-library/official-images).
|
||||
For more information about this image and its history, please see the [relevant manifest file (`library/httpd`)](https://github.com/docker-library/official-images/blob/master/library/httpd) in the [`docker-library/official-images` GitHub repo](https://github.com/docker-library/official-images).
|
||||
|
||||
# What is httpd?
|
||||
|
||||
The Apache HTTP Server, colloquially called Apache, is a Web server application
|
||||
notable for playing a key role in the initial growth of the World Wide Web.
|
||||
Originally based on the NCSA HTTPd server, development of Apache began in early
|
||||
1995 after work on the NCSA code stalled. Apache quickly overtook NCSA HTTPd as
|
||||
the dominant HTTP server, and has remained the most popular HTTP server in use
|
||||
since April 1996.
|
||||
The Apache HTTP Server, colloquially called Apache, is a Web server application notable for playing a key role in the initial growth of the World Wide Web. Originally based on the NCSA HTTPd server, development of Apache began in early 1995 after work on the NCSA code stalled. Apache quickly overtook NCSA HTTPd as the dominant HTTP server, and has remained the most popular HTTP server in use since April 1996.
|
||||
|
||||
> [wikipedia.org/wiki/Apache_HTTP_Server](http://en.wikipedia.org/wiki/Apache_HTTP_Server)
|
||||
|
||||
|
|
@ -24,57 +15,40 @@ since April 1996.
|
|||
|
||||
# How to use this image.
|
||||
|
||||
This image only contains Apache httpd with the defaults from upstream. There is
|
||||
no PHP installed, but it should not be hard to extend. On the other hand, of you
|
||||
just want PHP with Apache httpd see the [PHP
|
||||
image](https://registry.hub.docker.com/_/php/) and look at the `-apache` tags.
|
||||
If you want to run a simple HTML server, add a simple Dockerfile to your project
|
||||
where `public-html/` is the directory containing all your HTML.
|
||||
This image only contains Apache httpd with the defaults from upstream. There is no PHP installed, but it should not be hard to extend. On the other hand, of you just want PHP with Apache httpd see the [PHP image](https://registry.hub.docker.com/_/php/) and look at the `-apache` tags. If you want to run a simple HTML server, add a simple Dockerfile to your project where `public-html/` is the directory containing all your HTML.
|
||||
|
||||
### Create a `Dockerfile` in your project
|
||||
|
||||
FROM httpd:2.4
|
||||
COPY ./public-html/ /usr/local/apache2/htdocs/
|
||||
FROM httpd:2.4
|
||||
COPY ./public-html/ /usr/local/apache2/htdocs/
|
||||
|
||||
Then, run the commands to build and run the Docker image:
|
||||
|
||||
docker build -t my-apache2 .
|
||||
docker run -it --rm --name my-running-app my-apache2
|
||||
docker build -t my-apache2 .
|
||||
docker run -it --rm --name my-running-app my-apache2
|
||||
|
||||
### Without a `Dockerfile`
|
||||
|
||||
If you don't want to include a `Dockerfile` in your project, it is sufficient to
|
||||
do the following:
|
||||
If you don't want to include a `Dockerfile` in your project, it is sufficient to do the following:
|
||||
|
||||
docker run -it --rm --name my-apache-app -v "$PWD":/usr/local/apache2/htdocs/ httpd:2.4
|
||||
docker run -it --rm --name my-apache-app -v "$PWD":/usr/local/apache2/htdocs/ httpd:2.4
|
||||
|
||||
### Configuration
|
||||
|
||||
To customize the configuration of the httpd server, just `COPY` your custom
|
||||
configuration in as `/usr/local/apache2/conf/httpd.conf`.
|
||||
To customize the configuration of the httpd server, just `COPY` your custom configuration in as `/usr/local/apache2/conf/httpd.conf`.
|
||||
|
||||
FROM httpd:2.4
|
||||
COPY ./my-httpd.conf /usr/local/apache2/conf/httpd.conf
|
||||
FROM httpd:2.4
|
||||
COPY ./my-httpd.conf /usr/local/apache2/conf/httpd.conf
|
||||
|
||||
#### SSL/HTTPS
|
||||
|
||||
If you want to run your web traffic over SSL, the simplest setup is to `COPY` or
|
||||
mount (`-v`) your `server.crt` and `server.key` into `/usr/local/apache2/conf/`
|
||||
and then customize the `/usr/local/apache2/conf/httpd.conf` by removing the
|
||||
comment from the line with `#Include conf/extra/httpd-ssl.conf`. This config
|
||||
file will use the certificate files previously added and tell the daemon to also
|
||||
listen on port 443. Be sure to also add something like `-p 443:443` to your
|
||||
`docker run` to forward the https port.
|
||||
If you want to run your web traffic over SSL, the simplest setup is to `COPY` or mount (`-v`) your `server.crt` and `server.key` into `/usr/local/apache2/conf/` and then customize the `/usr/local/apache2/conf/httpd.conf` by removing the comment from the line with `#Include conf/extra/httpd-ssl.conf`. This config file will use the certificate files previously added and tell the daemon to also listen on port 443. Be sure to also add something like `-p 443:443` to your `docker run` to forward the https port.
|
||||
|
||||
The previous steps should work well for development, but we recommend
|
||||
customizing your conf files for production, see
|
||||
[httpd.apache.org](https://httpd.apache.org/docs/2.2/ssl/ssl_faq.html) for more
|
||||
information about SSL setup.
|
||||
The previous steps should work well for development, but we recommend customizing your conf files for production, see [httpd.apache.org](https://httpd.apache.org/docs/2.2/ssl/ssl_faq.html) for more information about SSL setup.
|
||||
|
||||
# License
|
||||
|
||||
View [license information](https://www.apache.org/licenses/) for the software
|
||||
contained in this image.
|
||||
View [license information](https://www.apache.org/licenses/) for the software contained in this image.
|
||||
|
||||
# Supported Docker versions
|
||||
|
||||
|
|
@ -86,20 +60,12 @@ Support for older versions (down to 1.0) is provided on a best-effort basis.
|
|||
|
||||
## Issues
|
||||
|
||||
If you have any problems with or questions about this image, please contact us
|
||||
through a [GitHub issue](https://github.com/docker-library/httpd/issues).
|
||||
If you have any problems with or questions about this image, please contact us through a [GitHub issue](https://github.com/docker-library/httpd/issues).
|
||||
|
||||
You can also reach many of the official image maintainers via the
|
||||
`#docker-library` IRC channel on [Freenode](https://freenode.net).
|
||||
You can also reach many of the official image maintainers via the `#docker-library` IRC channel on [Freenode](https://freenode.net).
|
||||
|
||||
## Contributing
|
||||
|
||||
You are invited to contribute new features, fixes, or updates, large or small;
|
||||
we are always thrilled to receive pull requests, and do our best to process them
|
||||
as fast as we can.
|
||||
You are invited to contribute new features, fixes, or updates, large or small; we are always thrilled to receive pull requests, and do our best to process them as fast as we can.
|
||||
|
||||
Before you start to code, we recommend discussing your plans
|
||||
through a [GitHub issue](https://github.com/docker-library/httpd/issues), especially for more ambitious
|
||||
contributions. This gives other contributors a chance to point you in the right
|
||||
direction, give you feedback on your design, and help you find out if someone
|
||||
else is working on the same thing.
|
||||
Before you start to code, we recommend discussing your plans through a [GitHub issue](https://github.com/docker-library/httpd/issues), especially for more ambitious contributions. This gives other contributors a chance to point you in the right direction, give you feedback on your design, and help you find out if someone else is working on the same thing.
|
||||
|
|
|
|||
|
|
@ -1,11 +1,6 @@
|
|||
# What is httpd?
|
||||
|
||||
The Apache HTTP Server, colloquially called Apache, is a Web server application
|
||||
notable for playing a key role in the initial growth of the World Wide Web.
|
||||
Originally based on the NCSA HTTPd server, development of Apache began in early
|
||||
1995 after work on the NCSA code stalled. Apache quickly overtook NCSA HTTPd as
|
||||
the dominant HTTP server, and has remained the most popular HTTP server in use
|
||||
since April 1996.
|
||||
The Apache HTTP Server, colloquially called Apache, is a Web server application notable for playing a key role in the initial growth of the World Wide Web. Originally based on the NCSA HTTPd server, development of Apache began in early 1995 after work on the NCSA code stalled. Apache quickly overtook NCSA HTTPd as the dominant HTTP server, and has remained the most popular HTTP server in use since April 1996.
|
||||
|
||||
> [wikipedia.org/wiki/Apache_HTTP_Server](http://en.wikipedia.org/wiki/Apache_HTTP_Server)
|
||||
|
||||
|
|
@ -13,49 +8,33 @@ since April 1996.
|
|||
|
||||
# How to use this image.
|
||||
|
||||
This image only contains Apache httpd with the defaults from upstream. There is
|
||||
no PHP installed, but it should not be hard to extend. On the other hand, of you
|
||||
just want PHP with Apache httpd see the [PHP
|
||||
image](https://registry.hub.docker.com/_/php/) and look at the `-apache` tags.
|
||||
If you want to run a simple HTML server, add a simple Dockerfile to your project
|
||||
where `public-html/` is the directory containing all your HTML.
|
||||
This image only contains Apache httpd with the defaults from upstream. There is no PHP installed, but it should not be hard to extend. On the other hand, of you just want PHP with Apache httpd see the [PHP image](https://registry.hub.docker.com/_/php/) and look at the `-apache` tags. If you want to run a simple HTML server, add a simple Dockerfile to your project where `public-html/` is the directory containing all your HTML.
|
||||
|
||||
### Create a `Dockerfile` in your project
|
||||
|
||||
FROM httpd:2.4
|
||||
COPY ./public-html/ /usr/local/apache2/htdocs/
|
||||
FROM httpd:2.4
|
||||
COPY ./public-html/ /usr/local/apache2/htdocs/
|
||||
|
||||
Then, run the commands to build and run the Docker image:
|
||||
|
||||
docker build -t my-apache2 .
|
||||
docker run -it --rm --name my-running-app my-apache2
|
||||
docker build -t my-apache2 .
|
||||
docker run -it --rm --name my-running-app my-apache2
|
||||
|
||||
### Without a `Dockerfile`
|
||||
|
||||
If you don't want to include a `Dockerfile` in your project, it is sufficient to
|
||||
do the following:
|
||||
If you don't want to include a `Dockerfile` in your project, it is sufficient to do the following:
|
||||
|
||||
docker run -it --rm --name my-apache-app -v "$PWD":/usr/local/apache2/htdocs/ httpd:2.4
|
||||
docker run -it --rm --name my-apache-app -v "$PWD":/usr/local/apache2/htdocs/ httpd:2.4
|
||||
|
||||
### Configuration
|
||||
|
||||
To customize the configuration of the httpd server, just `COPY` your custom
|
||||
configuration in as `/usr/local/apache2/conf/httpd.conf`.
|
||||
To customize the configuration of the httpd server, just `COPY` your custom configuration in as `/usr/local/apache2/conf/httpd.conf`.
|
||||
|
||||
FROM httpd:2.4
|
||||
COPY ./my-httpd.conf /usr/local/apache2/conf/httpd.conf
|
||||
FROM httpd:2.4
|
||||
COPY ./my-httpd.conf /usr/local/apache2/conf/httpd.conf
|
||||
|
||||
#### SSL/HTTPS
|
||||
|
||||
If you want to run your web traffic over SSL, the simplest setup is to `COPY` or
|
||||
mount (`-v`) your `server.crt` and `server.key` into `/usr/local/apache2/conf/`
|
||||
and then customize the `/usr/local/apache2/conf/httpd.conf` by removing the
|
||||
comment from the line with `#Include conf/extra/httpd-ssl.conf`. This config
|
||||
file will use the certificate files previously added and tell the daemon to also
|
||||
listen on port 443. Be sure to also add something like `-p 443:443` to your
|
||||
`docker run` to forward the https port.
|
||||
If you want to run your web traffic over SSL, the simplest setup is to `COPY` or mount (`-v`) your `server.crt` and `server.key` into `/usr/local/apache2/conf/` and then customize the `/usr/local/apache2/conf/httpd.conf` by removing the comment from the line with `#Include conf/extra/httpd-ssl.conf`. This config file will use the certificate files previously added and tell the daemon to also listen on port 443. Be sure to also add something like `-p 443:443` to your `docker run` to forward the https port.
|
||||
|
||||
The previous steps should work well for development, but we recommend
|
||||
customizing your conf files for production, see
|
||||
[httpd.apache.org](https://httpd.apache.org/docs/2.2/ssl/ssl_faq.html) for more
|
||||
information about SSL setup.
|
||||
The previous steps should work well for development, but we recommend customizing your conf files for production, see [httpd.apache.org](https://httpd.apache.org/docs/2.2/ssl/ssl_faq.html) for more information about SSL setup.
|
||||
|
|
|
|||
|
|
@ -1,2 +1 @@
|
|||
View [license information](https://www.apache.org/licenses/) for the software
|
||||
contained in this image.
|
||||
View [license information](https://www.apache.org/licenses/) for the software contained in this image.
|
||||
|
|
|
|||
|
|
@ -1,22 +1,12 @@
|
|||
# Supported tags and respective `Dockerfile` links
|
||||
|
||||
- [`latest`, `0`, `0.10`, `0.10.1` (*Dockerfile*)](https://github.com/hylang/hy/blob/0.10.1/Dockerfile)
|
||||
- [`latest`, `0`, `0.10`, `0.10.1` (*Dockerfile*)](https://github.com/hylang/hy/blob/0.10.1/Dockerfile)
|
||||
|
||||
For more information about this image and its history, please see the [relevant
|
||||
manifest file
|
||||
(`library/hylang`)](https://github.com/docker-library/official-images/blob/master/library/hylang)
|
||||
in the [`docker-library/official-images` GitHub
|
||||
repo](https://github.com/docker-library/official-images).
|
||||
For more information about this image and its history, please see the [relevant manifest file (`library/hylang`)](https://github.com/docker-library/official-images/blob/master/library/hylang) in the [`docker-library/official-images` GitHub repo](https://github.com/docker-library/official-images).
|
||||
|
||||
# What is Hy?
|
||||
|
||||
Hy (a.k.a., Hylang) is a dialect of the Lisp programming language designed to
|
||||
interoperate with Python by translating expressions into Python's abstract
|
||||
syntax tree (AST). Similar to Clojure's mapping of s-expressions onto the JVM,
|
||||
Hy is meant to operate as a transparent Lisp front end to Python's abstract
|
||||
syntax. Hy also allows for Python libraries (including the standard library) to
|
||||
be imported and accessed alongside Hy code with a compilation step, converting
|
||||
the data structure of both into Python's AST.
|
||||
Hy (a.k.a., Hylang) is a dialect of the Lisp programming language designed to interoperate with Python by translating expressions into Python's abstract syntax tree (AST). Similar to Clojure's mapping of s-expressions onto the JVM, Hy is meant to operate as a transparent Lisp front end to Python's abstract syntax. Hy also allows for Python libraries (including the standard library) to be imported and accessed alongside Hy code with a compilation step, converting the data structure of both into Python's AST.
|
||||
|
||||
> [wikipedia.org/wiki/Hy](https://en.wikipedia.org/wiki/Hy)
|
||||
|
||||
|
|
@ -26,28 +16,25 @@ the data structure of both into Python's AST.
|
|||
|
||||
## Create a `Dockerfile` in your Hy project
|
||||
|
||||
FROM hylang:0.10
|
||||
COPY . /usr/src/myapp
|
||||
WORKDIR /usr/src/myapp
|
||||
CMD [ "hy", "./your-daemon-or-script.hy" ]
|
||||
FROM hylang:0.10
|
||||
COPY . /usr/src/myapp
|
||||
WORKDIR /usr/src/myapp
|
||||
CMD [ "hy", "./your-daemon-or-script.hy" ]
|
||||
|
||||
You can then build and run the Docker image:
|
||||
|
||||
docker build -t my-hylang-app
|
||||
docker run -it --rm --name my-running-app my-hylang-app
|
||||
docker build -t my-hylang-app
|
||||
docker run -it --rm --name my-running-app my-hylang-app
|
||||
|
||||
## Run a single Hy script
|
||||
|
||||
For many simple, single file projects, you may find it inconvenient to write a
|
||||
complete `Dockerfile`. In such cases, you can run a Hy script by using the Hy
|
||||
Docker image directly:
|
||||
For many simple, single file projects, you may find it inconvenient to write a complete `Dockerfile`. In such cases, you can run a Hy script by using the Hy Docker image directly:
|
||||
|
||||
docker run -it --rm --name my-running-script -v "$PWD":/usr/src/myapp -w /usr/src/myapp hylang:0.10 hy your-daemon-or-script.hy
|
||||
docker run -it --rm --name my-running-script -v "$PWD":/usr/src/myapp -w /usr/src/myapp hylang:0.10 hy your-daemon-or-script.hy
|
||||
|
||||
# License
|
||||
|
||||
View [license information](https://github.com/hylang/hy/blob/master/LICENSE)
|
||||
for the software contained in this image.
|
||||
View [license information](https://github.com/hylang/hy/blob/master/LICENSE) for the software contained in this image.
|
||||
|
||||
# Supported Docker versions
|
||||
|
||||
|
|
@ -59,20 +46,12 @@ Support for older versions (down to 1.0) is provided on a best-effort basis.
|
|||
|
||||
## Issues
|
||||
|
||||
If you have any problems with or questions about this image, please contact us
|
||||
through a [GitHub issue](https://github.com/hylang/hy/issues).
|
||||
If you have any problems with or questions about this image, please contact us through a [GitHub issue](https://github.com/hylang/hy/issues).
|
||||
|
||||
You can also reach many of the official image maintainers via the
|
||||
`#docker-library` IRC channel on [Freenode](https://freenode.net).
|
||||
You can also reach many of the official image maintainers via the `#docker-library` IRC channel on [Freenode](https://freenode.net).
|
||||
|
||||
## Contributing
|
||||
|
||||
You are invited to contribute new features, fixes, or updates, large or small;
|
||||
we are always thrilled to receive pull requests, and do our best to process them
|
||||
as fast as we can.
|
||||
You are invited to contribute new features, fixes, or updates, large or small; we are always thrilled to receive pull requests, and do our best to process them as fast as we can.
|
||||
|
||||
Before you start to code, we recommend discussing your plans
|
||||
through a [GitHub issue](https://github.com/hylang/hy/issues), especially for more ambitious
|
||||
contributions. This gives other contributors a chance to point you in the right
|
||||
direction, give you feedback on your design, and help you find out if someone
|
||||
else is working on the same thing.
|
||||
Before you start to code, we recommend discussing your plans through a [GitHub issue](https://github.com/hylang/hy/issues), especially for more ambitious contributions. This gives other contributors a chance to point you in the right direction, give you feedback on your design, and help you find out if someone else is working on the same thing.
|
||||
|
|
|
|||
|
|
@ -1,12 +1,6 @@
|
|||
# What is Hy?
|
||||
|
||||
Hy (a.k.a., Hylang) is a dialect of the Lisp programming language designed to
|
||||
interoperate with Python by translating expressions into Python's abstract
|
||||
syntax tree (AST). Similar to Clojure's mapping of s-expressions onto the JVM,
|
||||
Hy is meant to operate as a transparent Lisp front end to Python's abstract
|
||||
syntax. Hy also allows for Python libraries (including the standard library) to
|
||||
be imported and accessed alongside Hy code with a compilation step, converting
|
||||
the data structure of both into Python's AST.
|
||||
Hy (a.k.a., Hylang) is a dialect of the Lisp programming language designed to interoperate with Python by translating expressions into Python's abstract syntax tree (AST). Similar to Clojure's mapping of s-expressions onto the JVM, Hy is meant to operate as a transparent Lisp front end to Python's abstract syntax. Hy also allows for Python libraries (including the standard library) to be imported and accessed alongside Hy code with a compilation step, converting the data structure of both into Python's AST.
|
||||
|
||||
> [wikipedia.org/wiki/Hy](https://en.wikipedia.org/wiki/Hy)
|
||||
|
||||
|
|
@ -16,20 +10,18 @@ the data structure of both into Python's AST.
|
|||
|
||||
## Create a `Dockerfile` in your Hy project
|
||||
|
||||
FROM hylang:0.10
|
||||
COPY . /usr/src/myapp
|
||||
WORKDIR /usr/src/myapp
|
||||
CMD [ "hy", "./your-daemon-or-script.hy" ]
|
||||
FROM hylang:0.10
|
||||
COPY . /usr/src/myapp
|
||||
WORKDIR /usr/src/myapp
|
||||
CMD [ "hy", "./your-daemon-or-script.hy" ]
|
||||
|
||||
You can then build and run the Docker image:
|
||||
|
||||
docker build -t my-hylang-app
|
||||
docker run -it --rm --name my-running-app my-hylang-app
|
||||
docker build -t my-hylang-app
|
||||
docker run -it --rm --name my-running-app my-hylang-app
|
||||
|
||||
## Run a single Hy script
|
||||
|
||||
For many simple, single file projects, you may find it inconvenient to write a
|
||||
complete `Dockerfile`. In such cases, you can run a Hy script by using the Hy
|
||||
Docker image directly:
|
||||
For many simple, single file projects, you may find it inconvenient to write a complete `Dockerfile`. In such cases, you can run a Hy script by using the Hy Docker image directly:
|
||||
|
||||
docker run -it --rm --name my-running-script -v "$PWD":/usr/src/myapp -w /usr/src/myapp hylang:0.10 hy your-daemon-or-script.hy
|
||||
docker run -it --rm --name my-running-script -v "$PWD":/usr/src/myapp -w /usr/src/myapp hylang:0.10 hy your-daemon-or-script.hy
|
||||
|
|
|
|||
|
|
@ -1,2 +1 @@
|
|||
View [license information](https://github.com/hylang/hy/blob/master/LICENSE)
|
||||
for the software contained in this image.
|
||||
View [license information](https://github.com/hylang/hy/blob/master/LICENSE) for the software contained in this image.
|
||||
|
|
|
|||
|
|
@ -1,14 +1,10 @@
|
|||
# Supported tags and respective `Dockerfile` links
|
||||
|
||||
- [`1.2.0`, `1.2`, `1`, `latest` (*1.2/Dockerfile*)](https://github.com/iojs/docker-iojs/blob/d8d0b8bf6cd41da8ad4bfc63e9a7b2b098868eae/1.2/Dockerfile)
|
||||
- [`1.2.0-onbuild`, `1.2-onbuild`, `1-onbuild`, `onbuild` (*1.2/onbuild/Dockerfile*)](https://github.com/iojs/docker-iojs/blob/d8d0b8bf6cd41da8ad4bfc63e9a7b2b098868eae/1.2/onbuild/Dockerfile)
|
||||
- [`1.2.0-slim`, `1.2-slim`, `1-slim`, `slim` (*1.2/slim/Dockerfile*)](https://github.com/iojs/docker-iojs/blob/d8d0b8bf6cd41da8ad4bfc63e9a7b2b098868eae/1.2/slim/Dockerfile)
|
||||
- [`1.2.0`, `1.2`, `1`, `latest` (*1.2/Dockerfile*)](https://github.com/iojs/docker-iojs/blob/d8d0b8bf6cd41da8ad4bfc63e9a7b2b098868eae/1.2/Dockerfile)
|
||||
- [`1.2.0-onbuild`, `1.2-onbuild`, `1-onbuild`, `onbuild` (*1.2/onbuild/Dockerfile*)](https://github.com/iojs/docker-iojs/blob/d8d0b8bf6cd41da8ad4bfc63e9a7b2b098868eae/1.2/onbuild/Dockerfile)
|
||||
- [`1.2.0-slim`, `1.2-slim`, `1-slim`, `slim` (*1.2/slim/Dockerfile*)](https://github.com/iojs/docker-iojs/blob/d8d0b8bf6cd41da8ad4bfc63e9a7b2b098868eae/1.2/slim/Dockerfile)
|
||||
|
||||
For more information about this image and its history, please see the [relevant
|
||||
manifest file
|
||||
(`library/iojs`)](https://github.com/docker-library/official-images/blob/master/library/iojs)
|
||||
in the [`docker-library/official-images` GitHub
|
||||
repo](https://github.com/docker-library/official-images).
|
||||
For more information about this image and its history, please see the [relevant manifest file (`library/iojs`)](https://github.com/docker-library/official-images/blob/master/library/iojs) in the [`docker-library/official-images` GitHub repo](https://github.com/docker-library/official-images).
|
||||
|
||||
## What is io.js?
|
||||
|
||||
|
|
@ -26,31 +22,24 @@ This project aims to continue development of io.js under an "open governance mod
|
|||
|
||||
If you want to distribute your application on the docker registry, create a `Dockerfile` in the root of application directory:
|
||||
|
||||
```
|
||||
FROM iojs:onbuild
|
||||
|
||||
# Expose the ports that your app uses. For example:
|
||||
EXPOSE 8080
|
||||
```
|
||||
FROM iojs:onbuild
|
||||
|
||||
# Expose the ports that your app uses. For example:
|
||||
EXPOSE 8080
|
||||
|
||||
Then simply run:
|
||||
|
||||
```
|
||||
$ docker build -t iojs-app
|
||||
...
|
||||
$ docker run --rm -it iojs-app
|
||||
```
|
||||
$ docker build -t iojs-app
|
||||
...
|
||||
$ docker run --rm -it iojs-app
|
||||
|
||||
To run a single script, you can mount it in a volume under `/usr/src/app`. From the root of your application directory (assuming your script is named `index.js`):
|
||||
|
||||
```
|
||||
$ docker run -v ${PWD}:/usr/src/app -w /usr/src/app --it --rm iojs iojs index.js
|
||||
```
|
||||
$ docker run -v ${PWD}:/usr/src/app -w /usr/src/app --it --rm iojs iojs index.js
|
||||
|
||||
# License
|
||||
|
||||
View [license information](https://github.com/iojs/io.js/blob/master/LICENSE)
|
||||
for the software contained in this image.
|
||||
View [license information](https://github.com/iojs/io.js/blob/master/LICENSE) for the software contained in this image.
|
||||
|
||||
# Supported Docker versions
|
||||
|
||||
|
|
@ -62,20 +51,12 @@ Support for older versions (down to 1.0) is provided on a best-effort basis.
|
|||
|
||||
## Issues
|
||||
|
||||
If you have any problems with or questions about this image, please contact us
|
||||
through a [GitHub issue](https://github.com/iojs/docker-iojs/issues).
|
||||
If you have any problems with or questions about this image, please contact us through a [GitHub issue](https://github.com/iojs/docker-iojs/issues).
|
||||
|
||||
You can also reach many of the official image maintainers via the
|
||||
`#docker-library` IRC channel on [Freenode](https://freenode.net).
|
||||
You can also reach many of the official image maintainers via the `#docker-library` IRC channel on [Freenode](https://freenode.net).
|
||||
|
||||
## Contributing
|
||||
|
||||
You are invited to contribute new features, fixes, or updates, large or small;
|
||||
we are always thrilled to receive pull requests, and do our best to process them
|
||||
as fast as we can.
|
||||
You are invited to contribute new features, fixes, or updates, large or small; we are always thrilled to receive pull requests, and do our best to process them as fast as we can.
|
||||
|
||||
Before you start to code, we recommend discussing your plans
|
||||
through a [GitHub issue](https://github.com/iojs/docker-iojs/issues), especially for more ambitious
|
||||
contributions. This gives other contributors a chance to point you in the right
|
||||
direction, give you feedback on your design, and help you find out if someone
|
||||
else is working on the same thing.
|
||||
Before you start to code, we recommend discussing your plans through a [GitHub issue](https://github.com/iojs/docker-iojs/issues), especially for more ambitious contributions. This gives other contributors a chance to point you in the right direction, give you feedback on your design, and help you find out if someone else is working on the same thing.
|
||||
|
|
|
|||
|
|
@ -14,23 +14,17 @@ This project aims to continue development of io.js under an "open governance mod
|
|||
|
||||
If you want to distribute your application on the docker registry, create a `Dockerfile` in the root of application directory:
|
||||
|
||||
```
|
||||
FROM iojs:onbuild
|
||||
|
||||
# Expose the ports that your app uses. For example:
|
||||
EXPOSE 8080
|
||||
```
|
||||
FROM iojs:onbuild
|
||||
|
||||
# Expose the ports that your app uses. For example:
|
||||
EXPOSE 8080
|
||||
|
||||
Then simply run:
|
||||
|
||||
```
|
||||
$ docker build -t iojs-app
|
||||
...
|
||||
$ docker run --rm -it iojs-app
|
||||
```
|
||||
$ docker build -t iojs-app
|
||||
...
|
||||
$ docker run --rm -it iojs-app
|
||||
|
||||
To run a single script, you can mount it in a volume under `/usr/src/app`. From the root of your application directory (assuming your script is named `index.js`):
|
||||
|
||||
```
|
||||
$ docker run -v ${PWD}:/usr/src/app -w /usr/src/app --it --rm iojs iojs index.js
|
||||
```
|
||||
$ docker run -v ${PWD}:/usr/src/app -w /usr/src/app --it --rm iojs iojs index.js
|
||||
|
|
|
|||
|
|
@ -1,2 +1 @@
|
|||
View [license information](https://github.com/iojs/io.js/blob/master/LICENSE)
|
||||
for the software contained in this image.
|
||||
View [license information](https://github.com/iojs/io.js/blob/master/LICENSE) for the software contained in this image.
|
||||
|
|
|
|||
|
|
@ -1,18 +1,12 @@
|
|||
# Supported tags and respective `Dockerfile` links
|
||||
|
||||
- [`0.8.17`, `0.8`, `0`, `latest` (*Dockerfile*)](https://github.com/jfrazelle/irssi/blob/dfefff246e4a04dee588feafc1d720b5247a112e/Dockerfile)
|
||||
- [`0.8.17`, `0.8`, `0`, `latest` (*Dockerfile*)](https://github.com/jfrazelle/irssi/blob/dfefff246e4a04dee588feafc1d720b5247a112e/Dockerfile)
|
||||
|
||||
For more information about this image and its history, please see the [relevant
|
||||
manifest file
|
||||
(`library/irssi`)](https://github.com/docker-library/official-images/blob/master/library/irssi)
|
||||
in the [`docker-library/official-images` GitHub
|
||||
repo](https://github.com/docker-library/official-images).
|
||||
For more information about this image and its history, please see the [relevant manifest file (`library/irssi`)](https://github.com/docker-library/official-images/blob/master/library/irssi) in the [`docker-library/official-images` GitHub repo](https://github.com/docker-library/official-images).
|
||||
|
||||
# What is irssi?
|
||||
|
||||
Irssi is a terminal based IRC client for UNIX systems. It also supports SILC and
|
||||
ICB protocols via plugins. Some people refer to it as 'the client of the
|
||||
future'.
|
||||
Irssi is a terminal based IRC client for UNIX systems. It also supports SILC and ICB protocols via plugins. Some people refer to it as 'the client of the future'.
|
||||
|
||||
> [irssi.org](http://irssi.org)
|
||||
|
||||
|
|
@ -20,46 +14,37 @@ future'.
|
|||
|
||||
# How to use this image
|
||||
|
||||
Because it is unlikely any two irssi users have the same configuration
|
||||
preferences, this image does not include an irssi configuration. To configure
|
||||
irssi to your liking, please refer to [upstream's excellent (and comprehensive)
|
||||
+documentation](http://irssi.org/documentation).
|
||||
Because it is unlikely any two irssi users have the same configuration preferences, this image does not include an irssi configuration. To configure irssi to your liking, please refer to [upstream's excellent (and comprehensive) +documentation](http://irssi.org/documentation).
|
||||
|
||||
Be sure to also checkout the [awesome
|
||||
scripts](https://github.com/irssi/scripts.irssi.org) you can download to
|
||||
customize your irssi configuration.
|
||||
Be sure to also checkout the [awesome scripts](https://github.com/irssi/scripts.irssi.org) you can download to customize your irssi configuration.
|
||||
|
||||
## Directly via bind mount
|
||||
|
||||
On a Linux system, build and launch a container named `my-running-irssi` like
|
||||
this:
|
||||
On a Linux system, build and launch a container named `my-running-irssi` like this:
|
||||
|
||||
docker run -it --name my-running-irssi -e TERM -u $(id -u):$(id -g) \
|
||||
-v $HOME/.irssi:/home/user/.irssi:ro \
|
||||
-v /etc/localtime:/etc/localtime:ro \
|
||||
irssi
|
||||
docker run -it --name my-running-irssi -e TERM -u $(id -u):$(id -g) \
|
||||
-v $HOME/.irssi:/home/user/.irssi:ro \
|
||||
-v /etc/localtime:/etc/localtime:ro \
|
||||
irssi
|
||||
|
||||
On a Mac OS X system, run the same image using:
|
||||
|
||||
docker run -it --name my-running-irssi -e TERM -u $(id -u):$(id -g) \
|
||||
-v $HOME/.irssi:/home/user/.irssi:ro \
|
||||
irssi
|
||||
docker run -it --name my-running-irssi -e TERM -u $(id -u):$(id -g) \
|
||||
-v $HOME/.irssi:/home/user/.irssi:ro \
|
||||
irssi
|
||||
|
||||
You omit `/etc/localtime` on Mac OS X because `boot2docker` doesn't use this
|
||||
file.
|
||||
You omit `/etc/localtime` on Mac OS X because `boot2docker` doesn't use this file.
|
||||
|
||||
Of course, you can name your image anything you like. In Docker 1.5 you can also
|
||||
use the `--read-only` mount flag. For example, on Linux:
|
||||
Of course, you can name your image anything you like. In Docker 1.5 you can also use the `--read-only` mount flag. For example, on Linux:
|
||||
|
||||
docker run -it --name my-running-irssi -e TERM -u $(id -u):$(id -g) \
|
||||
--read-only -v $HOME/.irssi:/home/user/.irssi \
|
||||
-v /etc/localtime:/etc/localtime \
|
||||
irssi
|
||||
docker run -it --name my-running-irssi -e TERM -u $(id -u):$(id -g) \
|
||||
--read-only -v $HOME/.irssi:/home/user/.irssi \
|
||||
-v /etc/localtime:/etc/localtime \
|
||||
irssi
|
||||
|
||||
# License
|
||||
|
||||
View [license information](https://github.com/irssi/irssi/blob/master/COPYING) for
|
||||
the software contained in this image.
|
||||
View [license information](https://github.com/irssi/irssi/blob/master/COPYING) for the software contained in this image.
|
||||
|
||||
# Supported Docker versions
|
||||
|
||||
|
|
@ -71,20 +56,12 @@ Support for older versions (down to 1.0) is provided on a best-effort basis.
|
|||
|
||||
## Issues
|
||||
|
||||
If you have any problems with or questions about this image, please contact us
|
||||
through a [GitHub issue](https://github.com/jfrazelle/irssi/issues).
|
||||
If you have any problems with or questions about this image, please contact us through a [GitHub issue](https://github.com/jfrazelle/irssi/issues).
|
||||
|
||||
You can also reach many of the official image maintainers via the
|
||||
`#docker-library` IRC channel on [Freenode](https://freenode.net).
|
||||
You can also reach many of the official image maintainers via the `#docker-library` IRC channel on [Freenode](https://freenode.net).
|
||||
|
||||
## Contributing
|
||||
|
||||
You are invited to contribute new features, fixes, or updates, large or small;
|
||||
we are always thrilled to receive pull requests, and do our best to process them
|
||||
as fast as we can.
|
||||
You are invited to contribute new features, fixes, or updates, large or small; we are always thrilled to receive pull requests, and do our best to process them as fast as we can.
|
||||
|
||||
Before you start to code, we recommend discussing your plans
|
||||
through a [GitHub issue](https://github.com/jfrazelle/irssi/issues), especially for more ambitious
|
||||
contributions. This gives other contributors a chance to point you in the right
|
||||
direction, give you feedback on your design, and help you find out if someone
|
||||
else is working on the same thing.
|
||||
Before you start to code, we recommend discussing your plans through a [GitHub issue](https://github.com/jfrazelle/irssi/issues), especially for more ambitious contributions. This gives other contributors a chance to point you in the right direction, give you feedback on your design, and help you find out if someone else is working on the same thing.
|
||||
|
|
|
|||
|
|
@ -1,8 +1,6 @@
|
|||
# What is irssi?
|
||||
|
||||
Irssi is a terminal based IRC client for UNIX systems. It also supports SILC and
|
||||
ICB protocols via plugins. Some people refer to it as 'the client of the
|
||||
future'.
|
||||
Irssi is a terminal based IRC client for UNIX systems. It also supports SILC and ICB protocols via plugins. Some people refer to it as 'the client of the future'.
|
||||
|
||||
> [irssi.org](http://irssi.org)
|
||||
|
||||
|
|
@ -10,38 +8,30 @@ future'.
|
|||
|
||||
# How to use this image
|
||||
|
||||
Because it is unlikely any two irssi users have the same configuration
|
||||
preferences, this image does not include an irssi configuration. To configure
|
||||
irssi to your liking, please refer to [upstream's excellent (and comprehensive)
|
||||
+documentation](http://irssi.org/documentation).
|
||||
Because it is unlikely any two irssi users have the same configuration preferences, this image does not include an irssi configuration. To configure irssi to your liking, please refer to [upstream's excellent (and comprehensive) +documentation](http://irssi.org/documentation).
|
||||
|
||||
Be sure to also checkout the [awesome
|
||||
scripts](https://github.com/irssi/scripts.irssi.org) you can download to
|
||||
customize your irssi configuration.
|
||||
Be sure to also checkout the [awesome scripts](https://github.com/irssi/scripts.irssi.org) you can download to customize your irssi configuration.
|
||||
|
||||
## Directly via bind mount
|
||||
|
||||
On a Linux system, build and launch a container named `my-running-irssi` like
|
||||
this:
|
||||
On a Linux system, build and launch a container named `my-running-irssi` like this:
|
||||
|
||||
docker run -it --name my-running-irssi -e TERM -u $(id -u):$(id -g) \
|
||||
-v $HOME/.irssi:/home/user/.irssi:ro \
|
||||
-v /etc/localtime:/etc/localtime:ro \
|
||||
irssi
|
||||
docker run -it --name my-running-irssi -e TERM -u $(id -u):$(id -g) \
|
||||
-v $HOME/.irssi:/home/user/.irssi:ro \
|
||||
-v /etc/localtime:/etc/localtime:ro \
|
||||
irssi
|
||||
|
||||
On a Mac OS X system, run the same image using:
|
||||
|
||||
docker run -it --name my-running-irssi -e TERM -u $(id -u):$(id -g) \
|
||||
-v $HOME/.irssi:/home/user/.irssi:ro \
|
||||
irssi
|
||||
docker run -it --name my-running-irssi -e TERM -u $(id -u):$(id -g) \
|
||||
-v $HOME/.irssi:/home/user/.irssi:ro \
|
||||
irssi
|
||||
|
||||
You omit `/etc/localtime` on Mac OS X because `boot2docker` doesn't use this
|
||||
file.
|
||||
You omit `/etc/localtime` on Mac OS X because `boot2docker` doesn't use this file.
|
||||
|
||||
Of course, you can name your image anything you like. In Docker 1.5 you can also
|
||||
use the `--read-only` mount flag. For example, on Linux:
|
||||
Of course, you can name your image anything you like. In Docker 1.5 you can also use the `--read-only` mount flag. For example, on Linux:
|
||||
|
||||
docker run -it --name my-running-irssi -e TERM -u $(id -u):$(id -g) \
|
||||
--read-only -v $HOME/.irssi:/home/user/.irssi \
|
||||
-v /etc/localtime:/etc/localtime \
|
||||
irssi
|
||||
docker run -it --name my-running-irssi -e TERM -u $(id -u):$(id -g) \
|
||||
--read-only -v $HOME/.irssi:/home/user/.irssi \
|
||||
-v /etc/localtime:/etc/localtime \
|
||||
irssi
|
||||
|
|
|
|||
|
|
@ -1,2 +1 @@
|
|||
View [license information](https://github.com/irssi/irssi/blob/master/COPYING) for
|
||||
the software contained in this image.
|
||||
View [license information](https://github.com/irssi/irssi/blob/master/COPYING) for the software contained in this image.
|
||||
|
|
|
|||
|
|
@ -1,28 +1,21 @@
|
|||
# Supported tags and respective `Dockerfile` links
|
||||
|
||||
- [`openjdk-6b34-jdk`, `openjdk-6b34`, `openjdk-6-jdk`, `openjdk-6`, `6b34-jdk`, `6b34`, `6-jdk`, `6` (*openjdk-6-jdk/Dockerfile*)](https://github.com/docker-library/java/blob/3faf377815bd5409f91a007b092d38a36134baf5/openjdk-6-jdk/Dockerfile)
|
||||
- [`openjdk-6b34-jre`, `openjdk-6-jre`, `6b34-jre`, `6-jre` (*openjdk-6-jre/Dockerfile*)](https://github.com/docker-library/java/blob/3faf377815bd5409f91a007b092d38a36134baf5/openjdk-6-jre/Dockerfile)
|
||||
- [`openjdk-7u71-jdk`, `openjdk-7u71`, `openjdk-7-jdk`, `openjdk-7`, `7u71-jdk`, `7u71`, `7-jdk`, `7`, `jdk`, `latest` (*openjdk-7-jdk/Dockerfile*)](https://github.com/docker-library/java/blob/8b20818d91705361ff42b597369620680d0af98c/openjdk-7-jdk/Dockerfile)
|
||||
- [`openjdk-7u71-jre`, `openjdk-7-jre`, `7u71-jre`, `7-jre`, `jre` (*openjdk-7-jre/Dockerfile*)](https://github.com/docker-library/java/blob/d63214d23aad827190c599e23351bd0bdd7dcadc/openjdk-7-jre/Dockerfile)
|
||||
- [`openjdk-8u40-b22-jdk`, `openjdk-8u40-b22`, `openjdk-8u40-jdk`, `openjdk-8u40`, `openjdk-8-jdk`, `openjdk-8`, `8u40-b22-jdk`, `8u40-b22`, `8u40-jdk`, `8u40`, `8-jdk`, `8` (*openjdk-8-jdk/Dockerfile*)](https://github.com/docker-library/java/blob/4735dcec5fec2833635b8f6634d24d7e22c617b2/openjdk-8-jdk/Dockerfile)
|
||||
- [`openjdk-8u40-b22-jre`, `openjdk-8u40-jre`, `openjdk-8-jre`, `8u40-b22-jre`, `8u40-jre`, `8-jre` (*openjdk-8-jre/Dockerfile*)](https://github.com/docker-library/java/blob/4735dcec5fec2833635b8f6634d24d7e22c617b2/openjdk-8-jre/Dockerfile)
|
||||
- [`openjdk-6b34-jdk`, `openjdk-6b34`, `openjdk-6-jdk`, `openjdk-6`, `6b34-jdk`, `6b34`, `6-jdk`, `6` (*openjdk-6-jdk/Dockerfile*)](https://github.com/docker-library/java/blob/3faf377815bd5409f91a007b092d38a36134baf5/openjdk-6-jdk/Dockerfile)
|
||||
- [`openjdk-6b34-jre`, `openjdk-6-jre`, `6b34-jre`, `6-jre` (*openjdk-6-jre/Dockerfile*)](https://github.com/docker-library/java/blob/3faf377815bd5409f91a007b092d38a36134baf5/openjdk-6-jre/Dockerfile)
|
||||
- [`openjdk-7u71-jdk`, `openjdk-7u71`, `openjdk-7-jdk`, `openjdk-7`, `7u71-jdk`, `7u71`, `7-jdk`, `7`, `jdk`, `latest` (*openjdk-7-jdk/Dockerfile*)](https://github.com/docker-library/java/blob/8b20818d91705361ff42b597369620680d0af98c/openjdk-7-jdk/Dockerfile)
|
||||
- [`openjdk-7u71-jre`, `openjdk-7-jre`, `7u71-jre`, `7-jre`, `jre` (*openjdk-7-jre/Dockerfile*)](https://github.com/docker-library/java/blob/d63214d23aad827190c599e23351bd0bdd7dcadc/openjdk-7-jre/Dockerfile)
|
||||
- [`openjdk-8u40-b22-jdk`, `openjdk-8u40-b22`, `openjdk-8u40-jdk`, `openjdk-8u40`, `openjdk-8-jdk`, `openjdk-8`, `8u40-b22-jdk`, `8u40-b22`, `8u40-jdk`, `8u40`, `8-jdk`, `8` (*openjdk-8-jdk/Dockerfile*)](https://github.com/docker-library/java/blob/4735dcec5fec2833635b8f6634d24d7e22c617b2/openjdk-8-jdk/Dockerfile)
|
||||
- [`openjdk-8u40-b22-jre`, `openjdk-8u40-jre`, `openjdk-8-jre`, `8u40-b22-jre`, `8u40-jre`, `8-jre` (*openjdk-8-jre/Dockerfile*)](https://github.com/docker-library/java/blob/4735dcec5fec2833635b8f6634d24d7e22c617b2/openjdk-8-jre/Dockerfile)
|
||||
|
||||
For more information about this image and its history, please see the [relevant
|
||||
manifest file
|
||||
(`library/java`)](https://github.com/docker-library/official-images/blob/master/library/java)
|
||||
in the [`docker-library/official-images` GitHub
|
||||
repo](https://github.com/docker-library/official-images).
|
||||
For more information about this image and its history, please see the [relevant manifest file (`library/java`)](https://github.com/docker-library/official-images/blob/master/library/java) in the [`docker-library/official-images` GitHub repo](https://github.com/docker-library/official-images).
|
||||
|
||||
# What is Java?
|
||||
|
||||
Java is a concurrent, class-based, object-oriented language specifically
|
||||
designed to have as few implementation dependencies as possible. It is intended
|
||||
to allow application developers to "write once, run anywhere", meaning that code
|
||||
that runs on one platform does not need to be recompiled to run on another.
|
||||
Java is a concurrent, class-based, object-oriented language specifically designed to have as few implementation dependencies as possible. It is intended to allow application developers to "write once, run anywhere", meaning that code that runs on one platform does not need to be recompiled to run on another.
|
||||
|
||||
Java is a registered trademark of Oracle and/or its affiliates.
|
||||
|
||||
> [wikipedia.org/wiki/Java_(programming_language)](http://en.wikipedia.org/wiki/Java_(programming_language))
|
||||
> [wikipedia.org/wiki/Java_(programming_language)](http://en.wikipedia.org/wiki/Java_%28programming_language%29)
|
||||
|
||||

|
||||
|
||||
|
|
@ -30,38 +23,30 @@ Java is a registered trademark of Oracle and/or its affiliates.
|
|||
|
||||
## Start a Java instance in your app
|
||||
|
||||
The most straightforward way to use this image is to use a Java container as
|
||||
both the build and runtime environment. In your `Dockerfile`, writing something
|
||||
along the lines of the following will compile and run your project:
|
||||
The most straightforward way to use this image is to use a Java container as both the build and runtime environment. In your `Dockerfile`, writing something along the lines of the following will compile and run your project:
|
||||
|
||||
FROM java:7
|
||||
COPY . /usr/src/myapp
|
||||
WORKDIR /usr/src/myapp
|
||||
RUN javac Main.java
|
||||
CMD ["java", "Main"]
|
||||
FROM java:7
|
||||
COPY . /usr/src/myapp
|
||||
WORKDIR /usr/src/myapp
|
||||
RUN javac Main.java
|
||||
CMD ["java", "Main"]
|
||||
|
||||
You can then run and build the Docker image:
|
||||
|
||||
docker build -t my-java-app .
|
||||
docker run -it --rm --name my-running-app my-java-app
|
||||
docker build -t my-java-app .
|
||||
docker run -it --rm --name my-running-app my-java-app
|
||||
|
||||
## Compile your app inside the Docker container
|
||||
|
||||
There may be occasions where it is not appropriate to run your app inside a
|
||||
container. To compile, but not run your app inside the Docker instance, you can
|
||||
write something like:
|
||||
There may be occasions where it is not appropriate to run your app inside a container. To compile, but not run your app inside the Docker instance, you can write something like:
|
||||
|
||||
docker run --rm -v "$PWD":/usr/src/myapp -w /usr/src/myapp java:7 javac Main.java
|
||||
docker run --rm -v "$PWD":/usr/src/myapp -w /usr/src/myapp java:7 javac Main.java
|
||||
|
||||
This will add your current directory as a volume to the container, set the
|
||||
working directory to the volume, and run the command `javac Main.java` which
|
||||
will tell Java to compile the code in `Main.java` and output the Java class file
|
||||
to `Main.class`.
|
||||
This will add your current directory as a volume to the container, set the working directory to the volume, and run the command `javac Main.java` which will tell Java to compile the code in `Main.java` and output the Java class file to `Main.class`.
|
||||
|
||||
# License
|
||||
|
||||
View [license information](http://openjdk.java.net/legal/gplv2+ce.html)
|
||||
for the software contained in this image.
|
||||
View [license information](http://openjdk.java.net/legal/gplv2+ce.html) for the software contained in this image.
|
||||
|
||||
# Supported Docker versions
|
||||
|
||||
|
|
@ -73,20 +58,12 @@ Support for older versions (down to 1.0) is provided on a best-effort basis.
|
|||
|
||||
## Issues
|
||||
|
||||
If you have any problems with or questions about this image, please contact us
|
||||
through a [GitHub issue](https://github.com/docker-library/java/issues).
|
||||
If you have any problems with or questions about this image, please contact us through a [GitHub issue](https://github.com/docker-library/java/issues).
|
||||
|
||||
You can also reach many of the official image maintainers via the
|
||||
`#docker-library` IRC channel on [Freenode](https://freenode.net).
|
||||
You can also reach many of the official image maintainers via the `#docker-library` IRC channel on [Freenode](https://freenode.net).
|
||||
|
||||
## Contributing
|
||||
|
||||
You are invited to contribute new features, fixes, or updates, large or small;
|
||||
we are always thrilled to receive pull requests, and do our best to process them
|
||||
as fast as we can.
|
||||
You are invited to contribute new features, fixes, or updates, large or small; we are always thrilled to receive pull requests, and do our best to process them as fast as we can.
|
||||
|
||||
Before you start to code, we recommend discussing your plans
|
||||
through a [GitHub issue](https://github.com/docker-library/java/issues), especially for more ambitious
|
||||
contributions. This gives other contributors a chance to point you in the right
|
||||
direction, give you feedback on your design, and help you find out if someone
|
||||
else is working on the same thing.
|
||||
Before you start to code, we recommend discussing your plans through a [GitHub issue](https://github.com/docker-library/java/issues), especially for more ambitious contributions. This gives other contributors a chance to point you in the right direction, give you feedback on your design, and help you find out if someone else is working on the same thing.
|
||||
|
|
|
|||
|
|
@ -1,13 +1,10 @@
|
|||
# What is Java?
|
||||
|
||||
Java is a concurrent, class-based, object-oriented language specifically
|
||||
designed to have as few implementation dependencies as possible. It is intended
|
||||
to allow application developers to "write once, run anywhere", meaning that code
|
||||
that runs on one platform does not need to be recompiled to run on another.
|
||||
Java is a concurrent, class-based, object-oriented language specifically designed to have as few implementation dependencies as possible. It is intended to allow application developers to "write once, run anywhere", meaning that code that runs on one platform does not need to be recompiled to run on another.
|
||||
|
||||
Java is a registered trademark of Oracle and/or its affiliates.
|
||||
|
||||
> [wikipedia.org/wiki/Java_(programming_language)](http://en.wikipedia.org/wiki/Java_(programming_language))
|
||||
> [wikipedia.org/wiki/Java_(programming_language)](http://en.wikipedia.org/wiki/Java_%28programming_language%29)
|
||||
|
||||
%%LOGO%%
|
||||
|
||||
|
|
@ -15,30 +12,23 @@ Java is a registered trademark of Oracle and/or its affiliates.
|
|||
|
||||
## Start a Java instance in your app
|
||||
|
||||
The most straightforward way to use this image is to use a Java container as
|
||||
both the build and runtime environment. In your `Dockerfile`, writing something
|
||||
along the lines of the following will compile and run your project:
|
||||
The most straightforward way to use this image is to use a Java container as both the build and runtime environment. In your `Dockerfile`, writing something along the lines of the following will compile and run your project:
|
||||
|
||||
FROM java:7
|
||||
COPY . /usr/src/myapp
|
||||
WORKDIR /usr/src/myapp
|
||||
RUN javac Main.java
|
||||
CMD ["java", "Main"]
|
||||
FROM java:7
|
||||
COPY . /usr/src/myapp
|
||||
WORKDIR /usr/src/myapp
|
||||
RUN javac Main.java
|
||||
CMD ["java", "Main"]
|
||||
|
||||
You can then run and build the Docker image:
|
||||
|
||||
docker build -t my-java-app .
|
||||
docker run -it --rm --name my-running-app my-java-app
|
||||
docker build -t my-java-app .
|
||||
docker run -it --rm --name my-running-app my-java-app
|
||||
|
||||
## Compile your app inside the Docker container
|
||||
|
||||
There may be occasions where it is not appropriate to run your app inside a
|
||||
container. To compile, but not run your app inside the Docker instance, you can
|
||||
write something like:
|
||||
There may be occasions where it is not appropriate to run your app inside a container. To compile, but not run your app inside the Docker instance, you can write something like:
|
||||
|
||||
docker run --rm -v "$PWD":/usr/src/myapp -w /usr/src/myapp java:7 javac Main.java
|
||||
docker run --rm -v "$PWD":/usr/src/myapp -w /usr/src/myapp java:7 javac Main.java
|
||||
|
||||
This will add your current directory as a volume to the container, set the
|
||||
working directory to the volume, and run the command `javac Main.java` which
|
||||
will tell Java to compile the code in `Main.java` and output the Java class file
|
||||
to `Main.class`.
|
||||
This will add your current directory as a volume to the container, set the working directory to the volume, and run the command `javac Main.java` which will tell Java to compile the code in `Main.java` and output the Java class file to `Main.class`.
|
||||
|
|
|
|||
|
|
@ -1,2 +1 @@
|
|||
View [license information](http://openjdk.java.net/legal/gplv2+ce.html)
|
||||
for the software contained in this image.
|
||||
View [license information](http://openjdk.java.net/legal/gplv2+ce.html) for the software contained in this image.
|
||||
|
|
|
|||
|
|
@ -1,115 +1,98 @@
|
|||
# Supported tags and respective `Dockerfile` links
|
||||
|
||||
- [`1.554.1` (*1.554.1/Dockerfile*)](https://github.com/cloudbees/jenkins-ci.org-docker/blob/f313389f8ab728d7b4207da36804ea54415c830b/1.554.1/Dockerfile)
|
||||
- [`1.554.2` (*1.554.2/Dockerfile*)](https://github.com/cloudbees/jenkins-ci.org-docker/blob/f313389f8ab728d7b4207da36804ea54415c830b/1.554.2/Dockerfile)
|
||||
- [`1.554.3` (*1.554.3/Dockerfile*)](https://github.com/cloudbees/jenkins-ci.org-docker/blob/40c3e3f46939b9f9dcf8d46e62fa7daa80485588/1.554.3/Dockerfile)
|
||||
- [`1.555` (*1.555/Dockerfile*)](https://github.com/cloudbees/jenkins-ci.org-docker/blob/40c3e3f46939b9f9dcf8d46e62fa7daa80485588/1.555/Dockerfile)
|
||||
- [`1.556` (*1.556/Dockerfile*)](https://github.com/cloudbees/jenkins-ci.org-docker/blob/40c3e3f46939b9f9dcf8d46e62fa7daa80485588/1.556/Dockerfile)
|
||||
- [`1.557` (*1.557/Dockerfile*)](https://github.com/cloudbees/jenkins-ci.org-docker/blob/40c3e3f46939b9f9dcf8d46e62fa7daa80485588/1.557/Dockerfile)
|
||||
- [`1.558` (*1.558/Dockerfile*)](https://github.com/cloudbees/jenkins-ci.org-docker/blob/40c3e3f46939b9f9dcf8d46e62fa7daa80485588/1.558/Dockerfile)
|
||||
- [`1.559` (*1.559/Dockerfile*)](https://github.com/cloudbees/jenkins-ci.org-docker/blob/40c3e3f46939b9f9dcf8d46e62fa7daa80485588/1.559/Dockerfile)
|
||||
- [`1.560` (*1.560/Dockerfile*)](https://github.com/cloudbees/jenkins-ci.org-docker/blob/40c3e3f46939b9f9dcf8d46e62fa7daa80485588/1.560/Dockerfile)
|
||||
- [`1.561` (*1.561/Dockerfile*)](https://github.com/cloudbees/jenkins-ci.org-docker/blob/40c3e3f46939b9f9dcf8d46e62fa7daa80485588/1.561/Dockerfile)
|
||||
- [`1.562` (*1.562/Dockerfile*)](https://github.com/cloudbees/jenkins-ci.org-docker/blob/40c3e3f46939b9f9dcf8d46e62fa7daa80485588/1.562/Dockerfile)
|
||||
- [`1.563` (*1.563/Dockerfile*)](https://github.com/cloudbees/jenkins-ci.org-docker/blob/40c3e3f46939b9f9dcf8d46e62fa7daa80485588/1.563/Dockerfile)
|
||||
- [`1.564` (*1.564/Dockerfile*)](https://github.com/cloudbees/jenkins-ci.org-docker/blob/40c3e3f46939b9f9dcf8d46e62fa7daa80485588/1.564/Dockerfile)
|
||||
- [`1.565.1` (*1.565.1/Dockerfile*)](https://github.com/cloudbees/jenkins-ci.org-docker/blob/f313389f8ab728d7b4207da36804ea54415c830b/1.565.1/Dockerfile)
|
||||
- [`1.565.2` (*1.565.2/Dockerfile*)](https://github.com/cloudbees/jenkins-ci.org-docker/blob/f313389f8ab728d7b4207da36804ea54415c830b/1.565.2/Dockerfile)
|
||||
- [`1.565.3` (*1.565.3/Dockerfile*)](https://github.com/cloudbees/jenkins-ci.org-docker/blob/40c3e3f46939b9f9dcf8d46e62fa7daa80485588/1.565.3/Dockerfile)
|
||||
- [`1.565` (*1.565/Dockerfile*)](https://github.com/cloudbees/jenkins-ci.org-docker/blob/40c3e3f46939b9f9dcf8d46e62fa7daa80485588/1.565/Dockerfile)
|
||||
- [`1.566` (*1.566/Dockerfile*)](https://github.com/cloudbees/jenkins-ci.org-docker/blob/40c3e3f46939b9f9dcf8d46e62fa7daa80485588/1.566/Dockerfile)
|
||||
- [`1.567` (*1.567/Dockerfile*)](https://github.com/cloudbees/jenkins-ci.org-docker/blob/40c3e3f46939b9f9dcf8d46e62fa7daa80485588/1.567/Dockerfile)
|
||||
- [`1.568` (*1.568/Dockerfile*)](https://github.com/cloudbees/jenkins-ci.org-docker/blob/40c3e3f46939b9f9dcf8d46e62fa7daa80485588/1.568/Dockerfile)
|
||||
- [`1.569` (*1.569/Dockerfile*)](https://github.com/cloudbees/jenkins-ci.org-docker/blob/40c3e3f46939b9f9dcf8d46e62fa7daa80485588/1.569/Dockerfile)
|
||||
- [`1.570` (*1.570/Dockerfile*)](https://github.com/cloudbees/jenkins-ci.org-docker/blob/40c3e3f46939b9f9dcf8d46e62fa7daa80485588/1.570/Dockerfile)
|
||||
- [`1.571` (*1.571/Dockerfile*)](https://github.com/cloudbees/jenkins-ci.org-docker/blob/40c3e3f46939b9f9dcf8d46e62fa7daa80485588/1.571/Dockerfile)
|
||||
- [`1.572` (*1.572/Dockerfile*)](https://github.com/cloudbees/jenkins-ci.org-docker/blob/40c3e3f46939b9f9dcf8d46e62fa7daa80485588/1.572/Dockerfile)
|
||||
- [`1.573` (*1.573/Dockerfile*)](https://github.com/cloudbees/jenkins-ci.org-docker/blob/40c3e3f46939b9f9dcf8d46e62fa7daa80485588/1.573/Dockerfile)
|
||||
- [`1.574` (*1.574/Dockerfile*)](https://github.com/cloudbees/jenkins-ci.org-docker/blob/40c3e3f46939b9f9dcf8d46e62fa7daa80485588/1.574/Dockerfile)
|
||||
- [`1.575` (*1.575/Dockerfile*)](https://github.com/cloudbees/jenkins-ci.org-docker/blob/40c3e3f46939b9f9dcf8d46e62fa7daa80485588/1.575/Dockerfile)
|
||||
- [`1.576` (*1.576/Dockerfile*)](https://github.com/cloudbees/jenkins-ci.org-docker/blob/40c3e3f46939b9f9dcf8d46e62fa7daa80485588/1.576/Dockerfile)
|
||||
- [`1.577` (*1.577/Dockerfile*)](https://github.com/cloudbees/jenkins-ci.org-docker/blob/40c3e3f46939b9f9dcf8d46e62fa7daa80485588/1.577/Dockerfile)
|
||||
- [`1.578` (*1.578/Dockerfile*)](https://github.com/cloudbees/jenkins-ci.org-docker/blob/40c3e3f46939b9f9dcf8d46e62fa7daa80485588/1.578/Dockerfile)
|
||||
- [`1.579` (*1.579/Dockerfile*)](https://github.com/cloudbees/jenkins-ci.org-docker/blob/40c3e3f46939b9f9dcf8d46e62fa7daa80485588/1.579/Dockerfile)
|
||||
- [`1.580.1` (*1.580.1/Dockerfile*)](https://github.com/cloudbees/jenkins-ci.org-docker/blob/40c3e3f46939b9f9dcf8d46e62fa7daa80485588/1.580.1/Dockerfile)
|
||||
- [`1.580.2`, `latest` (*1.580.2/Dockerfile*)](https://github.com/cloudbees/jenkins-ci.org-docker/blob/c39540d22e2a9c20e691cbdc4c9c54aee77be357/1.580.2/Dockerfile)
|
||||
- [`1.580` (*1.580/Dockerfile*)](https://github.com/cloudbees/jenkins-ci.org-docker/blob/40c3e3f46939b9f9dcf8d46e62fa7daa80485588/1.580/Dockerfile)
|
||||
- [`1.581` (*1.581/Dockerfile*)](https://github.com/cloudbees/jenkins-ci.org-docker/blob/40c3e3f46939b9f9dcf8d46e62fa7daa80485588/1.581/Dockerfile)
|
||||
- [`1.582` (*1.582/Dockerfile*)](https://github.com/cloudbees/jenkins-ci.org-docker/blob/40c3e3f46939b9f9dcf8d46e62fa7daa80485588/1.582/Dockerfile)
|
||||
- [`1.583` (*1.583/Dockerfile*)](https://github.com/cloudbees/jenkins-ci.org-docker/blob/40c3e3f46939b9f9dcf8d46e62fa7daa80485588/1.583/Dockerfile)
|
||||
- [`1.584` (*1.584/Dockerfile*)](https://github.com/cloudbees/jenkins-ci.org-docker/blob/40c3e3f46939b9f9dcf8d46e62fa7daa80485588/1.584/Dockerfile)
|
||||
- [`1.585` (*1.585/Dockerfile*)](https://github.com/cloudbees/jenkins-ci.org-docker/blob/40c3e3f46939b9f9dcf8d46e62fa7daa80485588/1.585/Dockerfile)
|
||||
- [`1.586` (*1.586/Dockerfile*)](https://github.com/cloudbees/jenkins-ci.org-docker/blob/40c3e3f46939b9f9dcf8d46e62fa7daa80485588/1.586/Dockerfile)
|
||||
- [`1.587` (*1.587/Dockerfile*)](https://github.com/cloudbees/jenkins-ci.org-docker/blob/40c3e3f46939b9f9dcf8d46e62fa7daa80485588/1.587/Dockerfile)
|
||||
- [`1.588` (*1.588/Dockerfile*)](https://github.com/cloudbees/jenkins-ci.org-docker/blob/40c3e3f46939b9f9dcf8d46e62fa7daa80485588/1.588/Dockerfile)
|
||||
- [`1.589` (*1.589/Dockerfile*)](https://github.com/cloudbees/jenkins-ci.org-docker/blob/40c3e3f46939b9f9dcf8d46e62fa7daa80485588/1.589/Dockerfile)
|
||||
- [`1.590` (*1.590/Dockerfile*)](https://github.com/cloudbees/jenkins-ci.org-docker/blob/40c3e3f46939b9f9dcf8d46e62fa7daa80485588/1.590/Dockerfile)
|
||||
- [`1.591` (*1.591/Dockerfile*)](https://github.com/cloudbees/jenkins-ci.org-docker/blob/40c3e3f46939b9f9dcf8d46e62fa7daa80485588/1.591/Dockerfile)
|
||||
- [`1.592` (*1.592/Dockerfile*)](https://github.com/cloudbees/jenkins-ci.org-docker/blob/40c3e3f46939b9f9dcf8d46e62fa7daa80485588/1.592/Dockerfile)
|
||||
- [`1.593` (*1.593/Dockerfile*)](https://github.com/cloudbees/jenkins-ci.org-docker/blob/c39540d22e2a9c20e691cbdc4c9c54aee77be357/1.593/Dockerfile)
|
||||
- [`1.594` (*1.594/Dockerfile*)](https://github.com/cloudbees/jenkins-ci.org-docker/blob/c39540d22e2a9c20e691cbdc4c9c54aee77be357/1.594/Dockerfile)
|
||||
- [`1.595` (*1.595/Dockerfile*)](https://github.com/cloudbees/jenkins-ci.org-docker/blob/c39540d22e2a9c20e691cbdc4c9c54aee77be357/1.595/Dockerfile)
|
||||
- [`1.596`, `weekly` (*1.596/Dockerfile*)](https://github.com/cloudbees/jenkins-ci.org-docker/blob/c39540d22e2a9c20e691cbdc4c9c54aee77be357/1.596/Dockerfile)
|
||||
- [`1.554.1` (*1.554.1/Dockerfile*)](https://github.com/cloudbees/jenkins-ci.org-docker/blob/f313389f8ab728d7b4207da36804ea54415c830b/1.554.1/Dockerfile)
|
||||
- [`1.554.2` (*1.554.2/Dockerfile*)](https://github.com/cloudbees/jenkins-ci.org-docker/blob/f313389f8ab728d7b4207da36804ea54415c830b/1.554.2/Dockerfile)
|
||||
- [`1.554.3` (*1.554.3/Dockerfile*)](https://github.com/cloudbees/jenkins-ci.org-docker/blob/40c3e3f46939b9f9dcf8d46e62fa7daa80485588/1.554.3/Dockerfile)
|
||||
- [`1.555` (*1.555/Dockerfile*)](https://github.com/cloudbees/jenkins-ci.org-docker/blob/40c3e3f46939b9f9dcf8d46e62fa7daa80485588/1.555/Dockerfile)
|
||||
- [`1.556` (*1.556/Dockerfile*)](https://github.com/cloudbees/jenkins-ci.org-docker/blob/40c3e3f46939b9f9dcf8d46e62fa7daa80485588/1.556/Dockerfile)
|
||||
- [`1.557` (*1.557/Dockerfile*)](https://github.com/cloudbees/jenkins-ci.org-docker/blob/40c3e3f46939b9f9dcf8d46e62fa7daa80485588/1.557/Dockerfile)
|
||||
- [`1.558` (*1.558/Dockerfile*)](https://github.com/cloudbees/jenkins-ci.org-docker/blob/40c3e3f46939b9f9dcf8d46e62fa7daa80485588/1.558/Dockerfile)
|
||||
- [`1.559` (*1.559/Dockerfile*)](https://github.com/cloudbees/jenkins-ci.org-docker/blob/40c3e3f46939b9f9dcf8d46e62fa7daa80485588/1.559/Dockerfile)
|
||||
- [`1.560` (*1.560/Dockerfile*)](https://github.com/cloudbees/jenkins-ci.org-docker/blob/40c3e3f46939b9f9dcf8d46e62fa7daa80485588/1.560/Dockerfile)
|
||||
- [`1.561` (*1.561/Dockerfile*)](https://github.com/cloudbees/jenkins-ci.org-docker/blob/40c3e3f46939b9f9dcf8d46e62fa7daa80485588/1.561/Dockerfile)
|
||||
- [`1.562` (*1.562/Dockerfile*)](https://github.com/cloudbees/jenkins-ci.org-docker/blob/40c3e3f46939b9f9dcf8d46e62fa7daa80485588/1.562/Dockerfile)
|
||||
- [`1.563` (*1.563/Dockerfile*)](https://github.com/cloudbees/jenkins-ci.org-docker/blob/40c3e3f46939b9f9dcf8d46e62fa7daa80485588/1.563/Dockerfile)
|
||||
- [`1.564` (*1.564/Dockerfile*)](https://github.com/cloudbees/jenkins-ci.org-docker/blob/40c3e3f46939b9f9dcf8d46e62fa7daa80485588/1.564/Dockerfile)
|
||||
- [`1.565.1` (*1.565.1/Dockerfile*)](https://github.com/cloudbees/jenkins-ci.org-docker/blob/f313389f8ab728d7b4207da36804ea54415c830b/1.565.1/Dockerfile)
|
||||
- [`1.565.2` (*1.565.2/Dockerfile*)](https://github.com/cloudbees/jenkins-ci.org-docker/blob/f313389f8ab728d7b4207da36804ea54415c830b/1.565.2/Dockerfile)
|
||||
- [`1.565.3` (*1.565.3/Dockerfile*)](https://github.com/cloudbees/jenkins-ci.org-docker/blob/40c3e3f46939b9f9dcf8d46e62fa7daa80485588/1.565.3/Dockerfile)
|
||||
- [`1.565` (*1.565/Dockerfile*)](https://github.com/cloudbees/jenkins-ci.org-docker/blob/40c3e3f46939b9f9dcf8d46e62fa7daa80485588/1.565/Dockerfile)
|
||||
- [`1.566` (*1.566/Dockerfile*)](https://github.com/cloudbees/jenkins-ci.org-docker/blob/40c3e3f46939b9f9dcf8d46e62fa7daa80485588/1.566/Dockerfile)
|
||||
- [`1.567` (*1.567/Dockerfile*)](https://github.com/cloudbees/jenkins-ci.org-docker/blob/40c3e3f46939b9f9dcf8d46e62fa7daa80485588/1.567/Dockerfile)
|
||||
- [`1.568` (*1.568/Dockerfile*)](https://github.com/cloudbees/jenkins-ci.org-docker/blob/40c3e3f46939b9f9dcf8d46e62fa7daa80485588/1.568/Dockerfile)
|
||||
- [`1.569` (*1.569/Dockerfile*)](https://github.com/cloudbees/jenkins-ci.org-docker/blob/40c3e3f46939b9f9dcf8d46e62fa7daa80485588/1.569/Dockerfile)
|
||||
- [`1.570` (*1.570/Dockerfile*)](https://github.com/cloudbees/jenkins-ci.org-docker/blob/40c3e3f46939b9f9dcf8d46e62fa7daa80485588/1.570/Dockerfile)
|
||||
- [`1.571` (*1.571/Dockerfile*)](https://github.com/cloudbees/jenkins-ci.org-docker/blob/40c3e3f46939b9f9dcf8d46e62fa7daa80485588/1.571/Dockerfile)
|
||||
- [`1.572` (*1.572/Dockerfile*)](https://github.com/cloudbees/jenkins-ci.org-docker/blob/40c3e3f46939b9f9dcf8d46e62fa7daa80485588/1.572/Dockerfile)
|
||||
- [`1.573` (*1.573/Dockerfile*)](https://github.com/cloudbees/jenkins-ci.org-docker/blob/40c3e3f46939b9f9dcf8d46e62fa7daa80485588/1.573/Dockerfile)
|
||||
- [`1.574` (*1.574/Dockerfile*)](https://github.com/cloudbees/jenkins-ci.org-docker/blob/40c3e3f46939b9f9dcf8d46e62fa7daa80485588/1.574/Dockerfile)
|
||||
- [`1.575` (*1.575/Dockerfile*)](https://github.com/cloudbees/jenkins-ci.org-docker/blob/40c3e3f46939b9f9dcf8d46e62fa7daa80485588/1.575/Dockerfile)
|
||||
- [`1.576` (*1.576/Dockerfile*)](https://github.com/cloudbees/jenkins-ci.org-docker/blob/40c3e3f46939b9f9dcf8d46e62fa7daa80485588/1.576/Dockerfile)
|
||||
- [`1.577` (*1.577/Dockerfile*)](https://github.com/cloudbees/jenkins-ci.org-docker/blob/40c3e3f46939b9f9dcf8d46e62fa7daa80485588/1.577/Dockerfile)
|
||||
- [`1.578` (*1.578/Dockerfile*)](https://github.com/cloudbees/jenkins-ci.org-docker/blob/40c3e3f46939b9f9dcf8d46e62fa7daa80485588/1.578/Dockerfile)
|
||||
- [`1.579` (*1.579/Dockerfile*)](https://github.com/cloudbees/jenkins-ci.org-docker/blob/40c3e3f46939b9f9dcf8d46e62fa7daa80485588/1.579/Dockerfile)
|
||||
- [`1.580.1` (*1.580.1/Dockerfile*)](https://github.com/cloudbees/jenkins-ci.org-docker/blob/40c3e3f46939b9f9dcf8d46e62fa7daa80485588/1.580.1/Dockerfile)
|
||||
- [`1.580.2`, `latest` (*1.580.2/Dockerfile*)](https://github.com/cloudbees/jenkins-ci.org-docker/blob/c39540d22e2a9c20e691cbdc4c9c54aee77be357/1.580.2/Dockerfile)
|
||||
- [`1.580` (*1.580/Dockerfile*)](https://github.com/cloudbees/jenkins-ci.org-docker/blob/40c3e3f46939b9f9dcf8d46e62fa7daa80485588/1.580/Dockerfile)
|
||||
- [`1.581` (*1.581/Dockerfile*)](https://github.com/cloudbees/jenkins-ci.org-docker/blob/40c3e3f46939b9f9dcf8d46e62fa7daa80485588/1.581/Dockerfile)
|
||||
- [`1.582` (*1.582/Dockerfile*)](https://github.com/cloudbees/jenkins-ci.org-docker/blob/40c3e3f46939b9f9dcf8d46e62fa7daa80485588/1.582/Dockerfile)
|
||||
- [`1.583` (*1.583/Dockerfile*)](https://github.com/cloudbees/jenkins-ci.org-docker/blob/40c3e3f46939b9f9dcf8d46e62fa7daa80485588/1.583/Dockerfile)
|
||||
- [`1.584` (*1.584/Dockerfile*)](https://github.com/cloudbees/jenkins-ci.org-docker/blob/40c3e3f46939b9f9dcf8d46e62fa7daa80485588/1.584/Dockerfile)
|
||||
- [`1.585` (*1.585/Dockerfile*)](https://github.com/cloudbees/jenkins-ci.org-docker/blob/40c3e3f46939b9f9dcf8d46e62fa7daa80485588/1.585/Dockerfile)
|
||||
- [`1.586` (*1.586/Dockerfile*)](https://github.com/cloudbees/jenkins-ci.org-docker/blob/40c3e3f46939b9f9dcf8d46e62fa7daa80485588/1.586/Dockerfile)
|
||||
- [`1.587` (*1.587/Dockerfile*)](https://github.com/cloudbees/jenkins-ci.org-docker/blob/40c3e3f46939b9f9dcf8d46e62fa7daa80485588/1.587/Dockerfile)
|
||||
- [`1.588` (*1.588/Dockerfile*)](https://github.com/cloudbees/jenkins-ci.org-docker/blob/40c3e3f46939b9f9dcf8d46e62fa7daa80485588/1.588/Dockerfile)
|
||||
- [`1.589` (*1.589/Dockerfile*)](https://github.com/cloudbees/jenkins-ci.org-docker/blob/40c3e3f46939b9f9dcf8d46e62fa7daa80485588/1.589/Dockerfile)
|
||||
- [`1.590` (*1.590/Dockerfile*)](https://github.com/cloudbees/jenkins-ci.org-docker/blob/40c3e3f46939b9f9dcf8d46e62fa7daa80485588/1.590/Dockerfile)
|
||||
- [`1.591` (*1.591/Dockerfile*)](https://github.com/cloudbees/jenkins-ci.org-docker/blob/40c3e3f46939b9f9dcf8d46e62fa7daa80485588/1.591/Dockerfile)
|
||||
- [`1.592` (*1.592/Dockerfile*)](https://github.com/cloudbees/jenkins-ci.org-docker/blob/40c3e3f46939b9f9dcf8d46e62fa7daa80485588/1.592/Dockerfile)
|
||||
- [`1.593` (*1.593/Dockerfile*)](https://github.com/cloudbees/jenkins-ci.org-docker/blob/c39540d22e2a9c20e691cbdc4c9c54aee77be357/1.593/Dockerfile)
|
||||
- [`1.594` (*1.594/Dockerfile*)](https://github.com/cloudbees/jenkins-ci.org-docker/blob/c39540d22e2a9c20e691cbdc4c9c54aee77be357/1.594/Dockerfile)
|
||||
- [`1.595` (*1.595/Dockerfile*)](https://github.com/cloudbees/jenkins-ci.org-docker/blob/c39540d22e2a9c20e691cbdc4c9c54aee77be357/1.595/Dockerfile)
|
||||
- [`1.596`, `weekly` (*1.596/Dockerfile*)](https://github.com/cloudbees/jenkins-ci.org-docker/blob/c39540d22e2a9c20e691cbdc4c9c54aee77be357/1.596/Dockerfile)
|
||||
|
||||
For more information about this image and its history, please see the [relevant
|
||||
manifest file
|
||||
(`library/jenkins`)](https://github.com/docker-library/official-images/blob/master/library/jenkins)
|
||||
in the [`docker-library/official-images` GitHub
|
||||
repo](https://github.com/docker-library/official-images).
|
||||
For more information about this image and its history, please see the [relevant manifest file (`library/jenkins`)](https://github.com/docker-library/official-images/blob/master/library/jenkins) in the [`docker-library/official-images` GitHub repo](https://github.com/docker-library/official-images).
|
||||
|
||||
# Jenkins
|
||||
|
||||
The Jenkins Continuous Integration and Delivery server.
|
||||
|
||||
This is a fully functional Jenkins server, based on the Long Term Support
|
||||
release [http://jenkins-ci.org/](http://jenkins-ci.org/).
|
||||
This is a fully functional Jenkins server, based on the Long Term Support release [http://jenkins-ci.org/](http://jenkins-ci.org/).
|
||||
|
||||

|
||||
|
||||
# How to use this image
|
||||
|
||||
docker run -p 8080:8080 jenkins
|
||||
docker run -p 8080:8080 jenkins
|
||||
|
||||
This will store the workspace in /var/jenkins_home. All Jenkins data lives in
|
||||
there - including plugins and configuration. You will probably want to make that
|
||||
a persistent volume:
|
||||
This will store the workspace in /var/jenkins_home. All Jenkins data lives in there - including plugins and configuration. You will probably want to make that a persistent volume:
|
||||
|
||||
docker run --name myjenkins -p 8080:8080 -v /var/jenkins_home jenkins
|
||||
docker run --name myjenkins -p 8080:8080 -v /var/jenkins_home jenkins
|
||||
|
||||
The volume for the "myjenkins" named container will then be persistent.
|
||||
|
||||
You can also bind mount in a volume from the host:
|
||||
|
||||
First, ensure that /your/home is accessible by the jenkins user in container
|
||||
(jenkins user - uid 102 normally - or use -u root), then:
|
||||
First, ensure that /your/home is accessible by the jenkins user in container (jenkins user - uid 102 normally - or use -u root), then:
|
||||
|
||||
docker run -p 8080:8080 -v /your/home:/var/jenkins_home jenkins
|
||||
docker run -p 8080:8080 -v /your/home:/var/jenkins_home jenkins
|
||||
|
||||
## Backing up data
|
||||
|
||||
If you bind mount in a volume - you can simply back up that directory (which is
|
||||
jenkins_home) at any time.
|
||||
If you bind mount in a volume - you can simply back up that directory (which is jenkins_home) at any time.
|
||||
|
||||
If your volume is inside a container - you can use `docker cp
|
||||
$ID:/var/jenkins_home` command to extract the data.
|
||||
|
||||
## Attaching build executors
|
||||
|
||||
You can run builds on the master (out of the box) buf if you want to attach
|
||||
build slave servers: make sure you map the port: `-p 50000:50000` - which will
|
||||
be used when you connect a slave agent.
|
||||
You can run builds on the master (out of the box) buf if you want to attach build slave servers: make sure you map the port: `-p 50000:50000` - which will be used when you connect a slave agent.
|
||||
|
||||
[Here](https://registry.hub.docker.com/u/maestrodev/build-agent/) is an example
|
||||
docker container you can use as a build server with lots of good tools installed
|
||||
- which is well worth trying.
|
||||
[Here](https://registry.hub.docker.com/u/maestrodev/build-agent/) is an example docker container you can use as a build server with lots of good tools installed - which is well worth trying.
|
||||
|
||||
## Upgrading
|
||||
|
||||
All the data needed is in the /var/jenkins_home directory - so depending on how
|
||||
you manage that - depends on how you upgrade. Generally - you can copy it out -
|
||||
and then "docker pull" the image again - and you will have the latest LTS - you
|
||||
can then start up with -v pointing to that data (/var/jenkins_home) and
|
||||
everything will be as you left it.
|
||||
All the data needed is in the /var/jenkins_home directory - so depending on how you manage that - depends on how you upgrade. Generally - you can copy it out - and then "docker pull" the image again - and you will have the latest LTS - you can then start up with -v pointing to that data (/var/jenkins_home) and everything will be as you left it.
|
||||
|
||||
# Supported Docker versions
|
||||
|
||||
|
|
@ -121,20 +104,12 @@ Support for older versions (down to 1.0) is provided on a best-effort basis.
|
|||
|
||||
## Issues
|
||||
|
||||
If you have any problems with or questions about this image, please contact us
|
||||
through a [GitHub issue](https://github.com/cloudbees/jenkins-ci.org-docker/issues).
|
||||
If you have any problems with or questions about this image, please contact us through a [GitHub issue](https://github.com/cloudbees/jenkins-ci.org-docker/issues).
|
||||
|
||||
You can also reach many of the official image maintainers via the
|
||||
`#docker-library` IRC channel on [Freenode](https://freenode.net).
|
||||
You can also reach many of the official image maintainers via the `#docker-library` IRC channel on [Freenode](https://freenode.net).
|
||||
|
||||
## Contributing
|
||||
|
||||
You are invited to contribute new features, fixes, or updates, large or small;
|
||||
we are always thrilled to receive pull requests, and do our best to process them
|
||||
as fast as we can.
|
||||
You are invited to contribute new features, fixes, or updates, large or small; we are always thrilled to receive pull requests, and do our best to process them as fast as we can.
|
||||
|
||||
Before you start to code, we recommend discussing your plans
|
||||
through a [GitHub issue](https://github.com/cloudbees/jenkins-ci.org-docker/issues), especially for more ambitious
|
||||
contributions. This gives other contributors a chance to point you in the right
|
||||
direction, give you feedback on your design, and help you find out if someone
|
||||
else is working on the same thing.
|
||||
Before you start to code, we recommend discussing your plans through a [GitHub issue](https://github.com/cloudbees/jenkins-ci.org-docker/issues), especially for more ambitious contributions. This gives other contributors a chance to point you in the right direction, give you feedback on your design, and help you find out if someone else is working on the same thing.
|
||||
|
|
|
|||
|
|
@ -2,52 +2,39 @@
|
|||
|
||||
The Jenkins Continuous Integration and Delivery server.
|
||||
|
||||
This is a fully functional Jenkins server, based on the Long Term Support
|
||||
release [http://jenkins-ci.org/](http://jenkins-ci.org/).
|
||||
This is a fully functional Jenkins server, based on the Long Term Support release [http://jenkins-ci.org/](http://jenkins-ci.org/).
|
||||
|
||||

|
||||
|
||||
# How to use this image
|
||||
|
||||
docker run -p 8080:8080 jenkins
|
||||
docker run -p 8080:8080 jenkins
|
||||
|
||||
This will store the workspace in /var/jenkins_home. All Jenkins data lives in
|
||||
there - including plugins and configuration. You will probably want to make that
|
||||
a persistent volume:
|
||||
This will store the workspace in /var/jenkins_home. All Jenkins data lives in there - including plugins and configuration. You will probably want to make that a persistent volume:
|
||||
|
||||
docker run --name myjenkins -p 8080:8080 -v /var/jenkins_home jenkins
|
||||
docker run --name myjenkins -p 8080:8080 -v /var/jenkins_home jenkins
|
||||
|
||||
The volume for the "myjenkins" named container will then be persistent.
|
||||
|
||||
You can also bind mount in a volume from the host:
|
||||
|
||||
First, ensure that /your/home is accessible by the jenkins user in container
|
||||
(jenkins user - uid 102 normally - or use -u root), then:
|
||||
First, ensure that /your/home is accessible by the jenkins user in container (jenkins user - uid 102 normally - or use -u root), then:
|
||||
|
||||
docker run -p 8080:8080 -v /your/home:/var/jenkins_home jenkins
|
||||
docker run -p 8080:8080 -v /your/home:/var/jenkins_home jenkins
|
||||
|
||||
## Backing up data
|
||||
|
||||
If you bind mount in a volume - you can simply back up that directory (which is
|
||||
jenkins_home) at any time.
|
||||
If you bind mount in a volume - you can simply back up that directory (which is jenkins_home) at any time.
|
||||
|
||||
If your volume is inside a container - you can use `docker cp
|
||||
$ID:/var/jenkins_home` command to extract the data.
|
||||
|
||||
## Attaching build executors
|
||||
|
||||
You can run builds on the master (out of the box) buf if you want to attach
|
||||
build slave servers: make sure you map the port: `-p 50000:50000` - which will
|
||||
be used when you connect a slave agent.
|
||||
You can run builds on the master (out of the box) buf if you want to attach build slave servers: make sure you map the port: `-p 50000:50000` - which will be used when you connect a slave agent.
|
||||
|
||||
[Here](https://registry.hub.docker.com/u/maestrodev/build-agent/) is an example
|
||||
docker container you can use as a build server with lots of good tools installed
|
||||
- which is well worth trying.
|
||||
[Here](https://registry.hub.docker.com/u/maestrodev/build-agent/) is an example docker container you can use as a build server with lots of good tools installed - which is well worth trying.
|
||||
|
||||
## Upgrading
|
||||
|
||||
All the data needed is in the /var/jenkins_home directory - so depending on how
|
||||
you manage that - depends on how you upgrade. Generally - you can copy it out -
|
||||
and then "docker pull" the image again - and you will have the latest LTS - you
|
||||
can then start up with -v pointing to that data (/var/jenkins_home) and
|
||||
everything will be as you left it.
|
||||
All the data needed is in the /var/jenkins_home directory - so depending on how you manage that - depends on how you upgrade. Generally - you can copy it out - and then "docker pull" the image again - and you will have the latest LTS - you can then start up with -v pointing to that data (/var/jenkins_home) and everything will be as you left it.
|
||||
|
|
|
|||
|
|
@ -1,66 +1,48 @@
|
|||
# Supported tags and respective `Dockerfile` links
|
||||
|
||||
- [`7.6.16-jre7`, `7.6-jre7`, `7-jre7`, `7.6.16`, `7.6`, `7` (*7-jre7/Dockerfile*)](https://github.com/md5/docker-jetty/blob/74bdfc42759346f2c43f0faf7e7521f227a5e219/7-jre7/Dockerfile)
|
||||
- [`7.6.16-jre8`, `7.6-jre8`, `7-jre8` (*7-jre8/Dockerfile*)](https://github.com/md5/docker-jetty/blob/74bdfc42759346f2c43f0faf7e7521f227a5e219/7-jre8/Dockerfile)
|
||||
- [`8.1.16-jre7`, `8.1-jre7`, `8-jre7`, `8.1.16`, `8.1`, `8` (*8-jre7/Dockerfile*)](https://github.com/md5/docker-jetty/blob/74bdfc42759346f2c43f0faf7e7521f227a5e219/8-jre7/Dockerfile)
|
||||
- [`8.1.16-jre8`, `8.1-jre8`, `8-jre8` (*8-jre8/Dockerfile*)](https://github.com/md5/docker-jetty/blob/74bdfc42759346f2c43f0faf7e7521f227a5e219/8-jre8/Dockerfile)
|
||||
- [`9.2.7-jre7`, `9.2-jre7`, `9-jre7`, `jre7`, `9.2.7`, `9.2`, `9`, `latest` (*9-jre7/Dockerfile*)](https://github.com/md5/docker-jetty/blob/74bdfc42759346f2c43f0faf7e7521f227a5e219/9-jre7/Dockerfile)
|
||||
- [`9.2.7-jre8`, `9.2-jre8`, `9-jre8`, `jre8` (*9-jre8/Dockerfile*)](https://github.com/md5/docker-jetty/blob/74bdfc42759346f2c43f0faf7e7521f227a5e219/9-jre8/Dockerfile)
|
||||
- [`7.6.16-jre7`, `7.6-jre7`, `7-jre7`, `7.6.16`, `7.6`, `7` (*7-jre7/Dockerfile*)](https://github.com/md5/docker-jetty/blob/74bdfc42759346f2c43f0faf7e7521f227a5e219/7-jre7/Dockerfile)
|
||||
- [`7.6.16-jre8`, `7.6-jre8`, `7-jre8` (*7-jre8/Dockerfile*)](https://github.com/md5/docker-jetty/blob/74bdfc42759346f2c43f0faf7e7521f227a5e219/7-jre8/Dockerfile)
|
||||
- [`8.1.16-jre7`, `8.1-jre7`, `8-jre7`, `8.1.16`, `8.1`, `8` (*8-jre7/Dockerfile*)](https://github.com/md5/docker-jetty/blob/74bdfc42759346f2c43f0faf7e7521f227a5e219/8-jre7/Dockerfile)
|
||||
- [`8.1.16-jre8`, `8.1-jre8`, `8-jre8` (*8-jre8/Dockerfile*)](https://github.com/md5/docker-jetty/blob/74bdfc42759346f2c43f0faf7e7521f227a5e219/8-jre8/Dockerfile)
|
||||
- [`9.2.7-jre7`, `9.2-jre7`, `9-jre7`, `jre7`, `9.2.7`, `9.2`, `9`, `latest` (*9-jre7/Dockerfile*)](https://github.com/md5/docker-jetty/blob/74bdfc42759346f2c43f0faf7e7521f227a5e219/9-jre7/Dockerfile)
|
||||
- [`9.2.7-jre8`, `9.2-jre8`, `9-jre8`, `jre8` (*9-jre8/Dockerfile*)](https://github.com/md5/docker-jetty/blob/74bdfc42759346f2c43f0faf7e7521f227a5e219/9-jre8/Dockerfile)
|
||||
|
||||
For more information about this image and its history, please see the [relevant
|
||||
manifest file
|
||||
(`library/jetty`)](https://github.com/docker-library/official-images/blob/master/library/jetty)
|
||||
in the [`docker-library/official-images` GitHub
|
||||
repo](https://github.com/docker-library/official-images).
|
||||
For more information about this image and its history, please see the [relevant manifest file (`library/jetty`)](https://github.com/docker-library/official-images/blob/master/library/jetty) in the [`docker-library/official-images` GitHub repo](https://github.com/docker-library/official-images).
|
||||
|
||||
# What is Jetty?
|
||||
|
||||
Jetty is a pure Java-based HTTP (Web) server and Java Servlet container. While
|
||||
Web Servers are usually associated with serving documents to people, Jetty is
|
||||
now often used for machine to machine communications, usually within larger
|
||||
software frameworks. Jetty is developed as a free and open source project as
|
||||
part of the Eclipse Foundation. The web server is used in products such as
|
||||
Apache ActiveMQ, Alfresco, Apache Geronimo, Apache Maven, Apache
|
||||
Spark, Google App Engine, Eclipse, FUSE, Twitter's Streaming API and Zimbra.
|
||||
Jetty is also the server in open source projects such as Lift, Eucalyptus,
|
||||
Red5, Hadoop and I2P. Jetty supports the latest Java Servlet API (with JSP
|
||||
support) as well as protocols SPDY and WebSocket.
|
||||
Jetty is a pure Java-based HTTP (Web) server and Java Servlet container. While Web Servers are usually associated with serving documents to people, Jetty is now often used for machine to machine communications, usually within larger software frameworks. Jetty is developed as a free and open source project as part of the Eclipse Foundation. The web server is used in products such as Apache ActiveMQ, Alfresco, Apache Geronimo, Apache Maven, Apache Spark, Google App Engine, Eclipse, FUSE, Twitter's Streaming API and Zimbra. Jetty is also the server in open source projects such as Lift, Eucalyptus, Red5, Hadoop and I2P. Jetty supports the latest Java Servlet API (with JSP support) as well as protocols SPDY and WebSocket.
|
||||
|
||||
> [wikipedia.org/wiki/Jetty_(web_server)](https://en.wikipedia.org/wiki/Jetty_(web_server))
|
||||
> [wikipedia.org/wiki/Jetty_(web_server)](https://en.wikipedia.org/wiki/Jetty_%28web_server%29)
|
||||
|
||||

|
||||
Logo © Eclipse Foundation
|
||||
Logo © Eclipse Foundation
|
||||
|
||||
# How to use this image.
|
||||
|
||||
Run the default Jetty server (`CMD ["jetty.sh", "run"]`):
|
||||
|
||||
docker run -d jetty:9
|
||||
docker run -d jetty:9
|
||||
|
||||
You can test it by visiting `http://container-ip:8080` in a browser or, if you
|
||||
need access outside the host, on port 8888:
|
||||
You can test it by visiting `http://container-ip:8080` in a browser or, if you need access outside the host, on port 8888:
|
||||
|
||||
docker run -d -p 8888:8080 jetty:9
|
||||
docker run -d -p 8888:8080 jetty:9
|
||||
|
||||
You can then go to `http://localhost:8888` or `http://host-ip:8888` in a
|
||||
browser.
|
||||
You can then go to `http://localhost:8888` or `http://host-ip:8888` in a browser.
|
||||
|
||||
The default Jetty environment in the image is:
|
||||
|
||||
JETTY_HOME = /usr/local/jetty
|
||||
JETTY_CONF = /usr/local/jetty/etc/jetty.conf
|
||||
JETTY_STATE = /usr/local/jetty/jetty.state
|
||||
JETTY_ARGS =
|
||||
JAVA_OPTIONS =
|
||||
TMPDIR = /tmp
|
||||
JETTY_HOME = /usr/local/jetty
|
||||
JETTY_CONF = /usr/local/jetty/etc/jetty.conf
|
||||
JETTY_STATE = /usr/local/jetty/jetty.state
|
||||
JETTY_ARGS =
|
||||
JAVA_OPTIONS =
|
||||
TMPDIR = /tmp
|
||||
|
||||
Webapps can be [deployed](https://wiki.eclipse.org/Jetty/Howto/Deploy_Web_Applications)
|
||||
in `/usr/local/jetty/webapps`.
|
||||
Webapps can be [deployed](https://wiki.eclipse.org/Jetty/Howto/Deploy_Web_Applications) in `/usr/local/jetty/webapps`.
|
||||
|
||||
# License
|
||||
|
||||
View [license information](http://eclipse.org/jetty/licenses.php) for the
|
||||
software contained in this image.
|
||||
View [license information](http://eclipse.org/jetty/licenses.php) for the software contained in this image.
|
||||
|
||||
# Supported Docker versions
|
||||
|
||||
|
|
@ -72,20 +54,12 @@ Support for older versions (down to 1.0) is provided on a best-effort basis.
|
|||
|
||||
## Issues
|
||||
|
||||
If you have any problems with or questions about this image, please contact us
|
||||
through a [GitHub issue](https://github.com/md5/docker-jetty/issues).
|
||||
If you have any problems with or questions about this image, please contact us through a [GitHub issue](https://github.com/md5/docker-jetty/issues).
|
||||
|
||||
You can also reach many of the official image maintainers via the
|
||||
`#docker-library` IRC channel on [Freenode](https://freenode.net).
|
||||
You can also reach many of the official image maintainers via the `#docker-library` IRC channel on [Freenode](https://freenode.net).
|
||||
|
||||
## Contributing
|
||||
|
||||
You are invited to contribute new features, fixes, or updates, large or small;
|
||||
we are always thrilled to receive pull requests, and do our best to process them
|
||||
as fast as we can.
|
||||
You are invited to contribute new features, fixes, or updates, large or small; we are always thrilled to receive pull requests, and do our best to process them as fast as we can.
|
||||
|
||||
Before you start to code, we recommend discussing your plans
|
||||
through a [GitHub issue](https://github.com/md5/docker-jetty/issues), especially for more ambitious
|
||||
contributions. This gives other contributors a chance to point you in the right
|
||||
direction, give you feedback on your design, and help you find out if someone
|
||||
else is working on the same thing.
|
||||
Before you start to code, we recommend discussing your plans through a [GitHub issue](https://github.com/md5/docker-jetty/issues), especially for more ambitious contributions. This gives other contributors a chance to point you in the right direction, give you feedback on your design, and help you find out if someone else is working on the same thing.
|
||||
|
|
|
|||
|
|
@ -1,43 +1,30 @@
|
|||
# What is Jetty?
|
||||
|
||||
Jetty is a pure Java-based HTTP (Web) server and Java Servlet container. While
|
||||
Web Servers are usually associated with serving documents to people, Jetty is
|
||||
now often used for machine to machine communications, usually within larger
|
||||
software frameworks. Jetty is developed as a free and open source project as
|
||||
part of the Eclipse Foundation. The web server is used in products such as
|
||||
Apache ActiveMQ, Alfresco, Apache Geronimo, Apache Maven, Apache
|
||||
Spark, Google App Engine, Eclipse, FUSE, Twitter's Streaming API and Zimbra.
|
||||
Jetty is also the server in open source projects such as Lift, Eucalyptus,
|
||||
Red5, Hadoop and I2P. Jetty supports the latest Java Servlet API (with JSP
|
||||
support) as well as protocols SPDY and WebSocket.
|
||||
Jetty is a pure Java-based HTTP (Web) server and Java Servlet container. While Web Servers are usually associated with serving documents to people, Jetty is now often used for machine to machine communications, usually within larger software frameworks. Jetty is developed as a free and open source project as part of the Eclipse Foundation. The web server is used in products such as Apache ActiveMQ, Alfresco, Apache Geronimo, Apache Maven, Apache Spark, Google App Engine, Eclipse, FUSE, Twitter's Streaming API and Zimbra. Jetty is also the server in open source projects such as Lift, Eucalyptus, Red5, Hadoop and I2P. Jetty supports the latest Java Servlet API (with JSP support) as well as protocols SPDY and WebSocket.
|
||||
|
||||
> [wikipedia.org/wiki/Jetty_(web_server)](https://en.wikipedia.org/wiki/Jetty_(web_server))
|
||||
> [wikipedia.org/wiki/Jetty_(web_server)](https://en.wikipedia.org/wiki/Jetty_%28web_server%29)
|
||||
|
||||
%%LOGO%%
|
||||
Logo © Eclipse Foundation
|
||||
%%LOGO%% Logo © Eclipse Foundation
|
||||
|
||||
# How to use this image.
|
||||
|
||||
Run the default Jetty server (`CMD ["jetty.sh", "run"]`):
|
||||
|
||||
docker run -d jetty:9
|
||||
docker run -d jetty:9
|
||||
|
||||
You can test it by visiting `http://container-ip:8080` in a browser or, if you
|
||||
need access outside the host, on port 8888:
|
||||
You can test it by visiting `http://container-ip:8080` in a browser or, if you need access outside the host, on port 8888:
|
||||
|
||||
docker run -d -p 8888:8080 jetty:9
|
||||
docker run -d -p 8888:8080 jetty:9
|
||||
|
||||
You can then go to `http://localhost:8888` or `http://host-ip:8888` in a
|
||||
browser.
|
||||
You can then go to `http://localhost:8888` or `http://host-ip:8888` in a browser.
|
||||
|
||||
The default Jetty environment in the image is:
|
||||
|
||||
JETTY_HOME = /usr/local/jetty
|
||||
JETTY_CONF = /usr/local/jetty/etc/jetty.conf
|
||||
JETTY_STATE = /usr/local/jetty/jetty.state
|
||||
JETTY_ARGS =
|
||||
JAVA_OPTIONS =
|
||||
TMPDIR = /tmp
|
||||
JETTY_HOME = /usr/local/jetty
|
||||
JETTY_CONF = /usr/local/jetty/etc/jetty.conf
|
||||
JETTY_STATE = /usr/local/jetty/jetty.state
|
||||
JETTY_ARGS =
|
||||
JAVA_OPTIONS =
|
||||
TMPDIR = /tmp
|
||||
|
||||
Webapps can be [deployed](https://wiki.eclipse.org/Jetty/Howto/Deploy_Web_Applications)
|
||||
in `/usr/local/jetty/webapps`.
|
||||
Webapps can be [deployed](https://wiki.eclipse.org/Jetty/Howto/Deploy_Web_Applications) in `/usr/local/jetty/webapps`.
|
||||
|
|
|
|||
|
|
@ -1,2 +1 @@
|
|||
View [license information](http://eclipse.org/jetty/licenses.php) for the
|
||||
software contained in this image.
|
||||
View [license information](http://eclipse.org/jetty/licenses.php) for the software contained in this image.
|
||||
|
|
|
|||
|
|
@ -1,35 +1,23 @@
|
|||
# Supported tags and respective `Dockerfile` links
|
||||
|
||||
- [`1.7`, `1.7.19`, `latest`, `1.7-jre`, `1.7.19-jre` (*1.7/jre/Dockerfile*)](https://github.com/cpuguy83/docker-jruby/blob/68e55e5eaf8f8159ade4a305df0fd65f633493ae/1.7/jre/Dockerfile)
|
||||
- [`1.7-jdk`, `1.7.19-jdk` (*1.7/jdk/Dockerfile*)](https://github.com/cpuguy83/docker-jruby/blob/68e55e5eaf8f8159ade4a305df0fd65f633493ae/1.7/jdk/Dockerfile)
|
||||
- [`1.7-onbuild`, `1.7.19-onbuild` (*1.7/onbuild/Dockerfile*)](https://github.com/cpuguy83/docker-jruby/blob/627e1d1805efd8ff8b5f931f8d63a0de2c5b64e2/1.7/onbuild/Dockerfile)
|
||||
- [`9.0.0.0`, `9.0.0.0-jre`, `9.0.0.0.pre1`, `9.0.0.0.pre1-jre` (*9000/jre/Dockerfile*)](https://github.com/cpuguy83/docker-jruby/blob/7d3e3c8872c557c311cfbf85e54ebe4c82e8a725/9000/jre/Dockerfile)
|
||||
- [`9.0.0.0-jdk`, `9.0.0.0.pre1-jdk` (*9000/jdk/Dockerfile*)](https://github.com/cpuguy83/docker-jruby/blob/7d3e3c8872c557c311cfbf85e54ebe4c82e8a725/9000/jdk/Dockerfile)
|
||||
- [`9.0.0.0-onbuild`, `9.0.0.0.pre1-onbuild` (*9000/onbuild/Dockerfile*)](https://github.com/cpuguy83/docker-jruby/blob/627e1d1805efd8ff8b5f931f8d63a0de2c5b64e2/9000/onbuild/Dockerfile)
|
||||
- [`1.7`, `1.7.19`, `latest`, `1.7-jre`, `1.7.19-jre` (*1.7/jre/Dockerfile*)](https://github.com/cpuguy83/docker-jruby/blob/68e55e5eaf8f8159ade4a305df0fd65f633493ae/1.7/jre/Dockerfile)
|
||||
- [`1.7-jdk`, `1.7.19-jdk` (*1.7/jdk/Dockerfile*)](https://github.com/cpuguy83/docker-jruby/blob/68e55e5eaf8f8159ade4a305df0fd65f633493ae/1.7/jdk/Dockerfile)
|
||||
- [`1.7-onbuild`, `1.7.19-onbuild` (*1.7/onbuild/Dockerfile*)](https://github.com/cpuguy83/docker-jruby/blob/627e1d1805efd8ff8b5f931f8d63a0de2c5b64e2/1.7/onbuild/Dockerfile)
|
||||
- [`9.0.0.0`, `9.0.0.0-jre`, `9.0.0.0.pre1`, `9.0.0.0.pre1-jre` (*9000/jre/Dockerfile*)](https://github.com/cpuguy83/docker-jruby/blob/7d3e3c8872c557c311cfbf85e54ebe4c82e8a725/9000/jre/Dockerfile)
|
||||
- [`9.0.0.0-jdk`, `9.0.0.0.pre1-jdk` (*9000/jdk/Dockerfile*)](https://github.com/cpuguy83/docker-jruby/blob/7d3e3c8872c557c311cfbf85e54ebe4c82e8a725/9000/jdk/Dockerfile)
|
||||
- [`9.0.0.0-onbuild`, `9.0.0.0.pre1-onbuild` (*9000/onbuild/Dockerfile*)](https://github.com/cpuguy83/docker-jruby/blob/627e1d1805efd8ff8b5f931f8d63a0de2c5b64e2/9000/onbuild/Dockerfile)
|
||||
|
||||
For more information about this image and its history, please see the [relevant
|
||||
manifest file
|
||||
(`library/jruby`)](https://github.com/docker-library/official-images/blob/master/library/jruby)
|
||||
in the [`docker-library/official-images` GitHub
|
||||
repo](https://github.com/docker-library/official-images).
|
||||
For more information about this image and its history, please see the [relevant manifest file (`library/jruby`)](https://github.com/docker-library/official-images/blob/master/library/jruby) in the [`docker-library/official-images` GitHub repo](https://github.com/docker-library/official-images).
|
||||
|
||||
# What is JRuby?
|
||||
|
||||
JRuby (http://www.jruby.org) is an implementation of Ruby
|
||||
(http://www.ruby-lang.org) on the JVM.
|
||||
JRuby (http://www.jruby.org) is an implementation of Ruby (http://www.ruby-lang.org) on the JVM.
|
||||
|
||||
Ruby is a dynamic, reflective, object-oriented, general-purpose, open-source
|
||||
programming language. According to its authors, Ruby was influenced by Perl,
|
||||
Smalltalk, Eiffel, Ada, and Lisp. It supports multiple programming paradigms,
|
||||
including functional, object-oriented, and imperative. It also has a dynamic
|
||||
type system and automatic memory management.
|
||||
Ruby is a dynamic, reflective, object-oriented, general-purpose, open-source programming language. According to its authors, Ruby was influenced by Perl, Smalltalk, Eiffel, Ada, and Lisp. It supports multiple programming paradigms, including functional, object-oriented, and imperative. It also has a dynamic type system and automatic memory management.
|
||||
|
||||
> [wikipedia.org/wiki/Ruby_(programming_language)](https://en.wikipedia.org/wiki/Ruby_(programming_language))
|
||||
> [wikipedia.org/wiki/Ruby_(programming_language)](https://en.wikipedia.org/wiki/Ruby_%28programming_language%29)
|
||||
|
||||
JRuby leverages the robustness and speed of the JVM while providing the same
|
||||
Ruby that you already know and love.
|
||||
With JRuby you are able to take advantage of real native threads, enhanced
|
||||
garbage collection, and even import and use java libraries.
|
||||
JRuby leverages the robustness and speed of the JVM while providing the same Ruby that you already know and love. With JRuby you are able to take advantage of real native threads, enhanced garbage collection, and even import and use java libraries.
|
||||
|
||||

|
||||
|
||||
|
|
@ -37,40 +25,35 @@ garbage collection, and even import and use java libraries.
|
|||
|
||||
## Create a `Dockerfile` in your Ruby app project
|
||||
|
||||
FROM jruby:1.7-onbuild
|
||||
CMD ["./your-daemon-or-script.rb"]
|
||||
FROM jruby:1.7-onbuild
|
||||
CMD ["./your-daemon-or-script.rb"]
|
||||
|
||||
Put this file in the root of your app, next to the `Gemfile`.
|
||||
|
||||
This image includes multiple `ONBUILD` triggers which should be all you need to
|
||||
bootstrap most applications. The build will `COPY . /usr/src/app` and `RUN
|
||||
This image includes multiple `ONBUILD` triggers which should be all you need to bootstrap most applications. The build will `COPY . /usr/src/app` and `RUN
|
||||
bundle install`.
|
||||
|
||||
You can then build and run the Ruby image:
|
||||
|
||||
docker build -t my-ruby-app .
|
||||
docker run -it --name my-running-script my-ruby-app
|
||||
docker build -t my-ruby-app .
|
||||
docker run -it --name my-running-script my-ruby-app
|
||||
|
||||
### Generate a `Gemfile.lock`
|
||||
|
||||
The `onbuid` tag expects a `Gemfile.lock` in your app directory. This `docker
|
||||
run` will help you generate one. Run it in the root of your app, next to the
|
||||
`Gemfile`:
|
||||
run` will help you generate one. Run it in the root of your app, next to the `Gemfile`:
|
||||
|
||||
docker run --rm -v "$PWD":/usr/src/app -w /usr/src/app jruby:1.7 bundle install --system
|
||||
docker run --rm -v "$PWD":/usr/src/app -w /usr/src/app jruby:1.7 bundle install --system
|
||||
|
||||
## Run a single Ruby script
|
||||
|
||||
For many simple, single file projects, you may find it inconvenient to write a
|
||||
complete `Dockerfile`. In such cases, you can run a Ruby script by using the
|
||||
Ruby Docker image directly:
|
||||
For many simple, single file projects, you may find it inconvenient to write a complete `Dockerfile`. In such cases, you can run a Ruby script by using the Ruby Docker image directly:
|
||||
|
||||
docker run -it --rm --name my-running-script -v "$PWD":/usr/src/myapp -w /usr/src/myapp jruby:1.7 jruby your-daemon-or-script.rb
|
||||
docker run -it --rm --name my-running-script -v "$PWD":/usr/src/myapp -w /usr/src/myapp jruby:1.7 jruby your-daemon-or-script.rb
|
||||
|
||||
# License
|
||||
|
||||
View [license information](https://github.com/jruby/jruby/blob/master/COPYING)
|
||||
for the software contained in this image.
|
||||
View [license information](https://github.com/jruby/jruby/blob/master/COPYING) for the software contained in this image.
|
||||
|
||||
# Supported Docker versions
|
||||
|
||||
|
|
@ -82,20 +65,12 @@ Support for older versions (down to 1.0) is provided on a best-effort basis.
|
|||
|
||||
## Issues
|
||||
|
||||
If you have any problems with or questions about this image, please contact us
|
||||
through a [GitHub issue](https://github.com/cpuguy83/docker-jruby/issues).
|
||||
If you have any problems with or questions about this image, please contact us through a [GitHub issue](https://github.com/cpuguy83/docker-jruby/issues).
|
||||
|
||||
You can also reach many of the official image maintainers via the
|
||||
`#docker-library` IRC channel on [Freenode](https://freenode.net).
|
||||
You can also reach many of the official image maintainers via the `#docker-library` IRC channel on [Freenode](https://freenode.net).
|
||||
|
||||
## Contributing
|
||||
|
||||
You are invited to contribute new features, fixes, or updates, large or small;
|
||||
we are always thrilled to receive pull requests, and do our best to process them
|
||||
as fast as we can.
|
||||
You are invited to contribute new features, fixes, or updates, large or small; we are always thrilled to receive pull requests, and do our best to process them as fast as we can.
|
||||
|
||||
Before you start to code, we recommend discussing your plans
|
||||
through a [GitHub issue](https://github.com/cpuguy83/docker-jruby/issues), especially for more ambitious
|
||||
contributions. This gives other contributors a chance to point you in the right
|
||||
direction, give you feedback on your design, and help you find out if someone
|
||||
else is working on the same thing.
|
||||
Before you start to code, we recommend discussing your plans through a [GitHub issue](https://github.com/cpuguy83/docker-jruby/issues), especially for more ambitious contributions. This gives other contributors a chance to point you in the right direction, give you feedback on your design, and help you find out if someone else is working on the same thing.
|
||||
|
|
|
|||
|
|
@ -1,20 +1,12 @@
|
|||
# What is JRuby?
|
||||
|
||||
JRuby (http://www.jruby.org) is an implementation of Ruby
|
||||
(http://www.ruby-lang.org) on the JVM.
|
||||
JRuby (http://www.jruby.org) is an implementation of Ruby (http://www.ruby-lang.org) on the JVM.
|
||||
|
||||
Ruby is a dynamic, reflective, object-oriented, general-purpose, open-source
|
||||
programming language. According to its authors, Ruby was influenced by Perl,
|
||||
Smalltalk, Eiffel, Ada, and Lisp. It supports multiple programming paradigms,
|
||||
including functional, object-oriented, and imperative. It also has a dynamic
|
||||
type system and automatic memory management.
|
||||
Ruby is a dynamic, reflective, object-oriented, general-purpose, open-source programming language. According to its authors, Ruby was influenced by Perl, Smalltalk, Eiffel, Ada, and Lisp. It supports multiple programming paradigms, including functional, object-oriented, and imperative. It also has a dynamic type system and automatic memory management.
|
||||
|
||||
> [wikipedia.org/wiki/Ruby_(programming_language)](https://en.wikipedia.org/wiki/Ruby_(programming_language))
|
||||
> [wikipedia.org/wiki/Ruby_(programming_language)](https://en.wikipedia.org/wiki/Ruby_%28programming_language%29)
|
||||
|
||||
JRuby leverages the robustness and speed of the JVM while providing the same
|
||||
Ruby that you already know and love.
|
||||
With JRuby you are able to take advantage of real native threads, enhanced
|
||||
garbage collection, and even import and use java libraries.
|
||||
JRuby leverages the robustness and speed of the JVM while providing the same Ruby that you already know and love. With JRuby you are able to take advantage of real native threads, enhanced garbage collection, and even import and use java libraries.
|
||||
|
||||
%%LOGO%%
|
||||
|
||||
|
|
@ -22,32 +14,28 @@ garbage collection, and even import and use java libraries.
|
|||
|
||||
## Create a `Dockerfile` in your Ruby app project
|
||||
|
||||
FROM jruby:1.7-onbuild
|
||||
CMD ["./your-daemon-or-script.rb"]
|
||||
FROM jruby:1.7-onbuild
|
||||
CMD ["./your-daemon-or-script.rb"]
|
||||
|
||||
Put this file in the root of your app, next to the `Gemfile`.
|
||||
|
||||
This image includes multiple `ONBUILD` triggers which should be all you need to
|
||||
bootstrap most applications. The build will `COPY . /usr/src/app` and `RUN
|
||||
This image includes multiple `ONBUILD` triggers which should be all you need to bootstrap most applications. The build will `COPY . /usr/src/app` and `RUN
|
||||
bundle install`.
|
||||
|
||||
You can then build and run the Ruby image:
|
||||
|
||||
docker build -t my-ruby-app .
|
||||
docker run -it --name my-running-script my-ruby-app
|
||||
docker build -t my-ruby-app .
|
||||
docker run -it --name my-running-script my-ruby-app
|
||||
|
||||
### Generate a `Gemfile.lock`
|
||||
|
||||
The `onbuid` tag expects a `Gemfile.lock` in your app directory. This `docker
|
||||
run` will help you generate one. Run it in the root of your app, next to the
|
||||
`Gemfile`:
|
||||
run` will help you generate one. Run it in the root of your app, next to the `Gemfile`:
|
||||
|
||||
docker run --rm -v "$PWD":/usr/src/app -w /usr/src/app jruby:1.7 bundle install --system
|
||||
docker run --rm -v "$PWD":/usr/src/app -w /usr/src/app jruby:1.7 bundle install --system
|
||||
|
||||
## Run a single Ruby script
|
||||
|
||||
For many simple, single file projects, you may find it inconvenient to write a
|
||||
complete `Dockerfile`. In such cases, you can run a Ruby script by using the
|
||||
Ruby Docker image directly:
|
||||
For many simple, single file projects, you may find it inconvenient to write a complete `Dockerfile`. In such cases, you can run a Ruby script by using the Ruby Docker image directly:
|
||||
|
||||
docker run -it --rm --name my-running-script -v "$PWD":/usr/src/myapp -w /usr/src/myapp jruby:1.7 jruby your-daemon-or-script.rb
|
||||
docker run -it --rm --name my-running-script -v "$PWD":/usr/src/myapp -w /usr/src/myapp jruby:1.7 jruby your-daemon-or-script.rb
|
||||
|
|
|
|||
|
|
@ -1,2 +1 @@
|
|||
View [license information](https://github.com/jruby/jruby/blob/master/COPYING)
|
||||
for the software contained in this image.
|
||||
View [license information](https://github.com/jruby/jruby/blob/master/COPYING) for the software contained in this image.
|
||||
|
|
|
|||
|
|
@ -1,59 +1,42 @@
|
|||
# Supported tags and respective `Dockerfile` links
|
||||
|
||||
- [`latest`, `4` (*4/Dockerfile*)](https://github.com/juanluisbaptiste/docker-brew-mageia/blob/603a75ec98dfd7c26ed85108b309d4e5f39ded91/4/Dockerfile)
|
||||
- [`cauldron` (*cauldron/Dockerfile*)](https://github.com/juanluisbaptiste/docker-brew-mageia/blob/603a75ec98dfd7c26ed85108b309d4e5f39ded91/cauldron/Dockerfile)
|
||||
- [`latest`, `4` (*4/Dockerfile*)](https://github.com/juanluisbaptiste/docker-brew-mageia/blob/603a75ec98dfd7c26ed85108b309d4e5f39ded91/4/Dockerfile)
|
||||
- [`cauldron` (*cauldron/Dockerfile*)](https://github.com/juanluisbaptiste/docker-brew-mageia/blob/603a75ec98dfd7c26ed85108b309d4e5f39ded91/cauldron/Dockerfile)
|
||||
|
||||
For more information about this image and its history, please see the [relevant
|
||||
manifest file
|
||||
(`library/mageia`)](https://github.com/docker-library/official-images/blob/master/library/mageia)
|
||||
in the [`docker-library/official-images` GitHub
|
||||
repo](https://github.com/docker-library/official-images).
|
||||
For more information about this image and its history, please see the [relevant manifest file (`library/mageia`)](https://github.com/docker-library/official-images/blob/master/library/mageia) in the [`docker-library/official-images` GitHub repo](https://github.com/docker-library/official-images).
|
||||
|
||||
# What is Mageia?
|
||||
|
||||
[Mageia](http://www.mageia.org) is a GNU/Linux-based, Free Software operating
|
||||
system.It is a [community](https://www.mageia.org/en/community/) project,
|
||||
supported by [a nonprofit
|
||||
organisation](https://www.mageia.org/en/about/#mageia.org) of elected
|
||||
contributors.
|
||||
[Mageia](http://www.mageia.org) is a GNU/Linux-based, Free Software operating system.It is a [community](https://www.mageia.org/en/community/) project, supported by [a nonprofit organisation](https://www.mageia.org/en/about/#mageia.org) of elected contributors.
|
||||
|
||||

|
||||
|
||||
Our mission: to build great tools for people.
|
||||
|
||||
Further than just delivering a secure, stable and sustainable operating system,
|
||||
the goal is to set up a stable and trustable governance to direct collaborative
|
||||
projects.
|
||||
Further than just delivering a secure, stable and sustainable operating system, the goal is to set up a stable and trustable governance to direct collaborative projects.
|
||||
|
||||
To date, Mageia:
|
||||
|
||||
- [started in September 2010 as a
|
||||
fork](https://www.mageia.org/en/about/2010-sept-announcement.html) of Mandriva
|
||||
Linux;
|
||||
- gathered hundreds of careful individuals and several companies worldwide,who
|
||||
coproduce the infrastructure, the distribution itself,
|
||||
[documentation](https://wiki.mageia.org/),
|
||||
[delivery](https://www.mageia.org/en/downloads/) and
|
||||
[support](https://www.mageia.org/en/support/), using Free Software tools;
|
||||
- released four major stable releases in June 2011, in May 2012, in May 2013 and
|
||||
in February 2014.
|
||||
- [started in September 2010 as a fork](https://www.mageia.org/en/about/2010-sept-announcement.html) of Mandriva Linux;
|
||||
- gathered hundreds of careful individuals and several companies worldwide,who coproduce the infrastructure, the distribution itself, [documentation](https://wiki.mageia.org/), [delivery](https://www.mageia.org/en/downloads/) and [support](https://www.mageia.org/en/support/), using Free Software tools;
|
||||
- released four major stable releases in June 2011, in May 2012, in May 2013 and in February 2014.
|
||||
|
||||
# How to use this image
|
||||
|
||||
## Create a Dockerfile for your container
|
||||
|
||||
FROM mageia:4
|
||||
MAINTAINER "Foo Bar" <foo@bar.com>
|
||||
CMD [ "bash" ]
|
||||
FROM mageia:4
|
||||
MAINTAINER "Foo Bar" <foo@bar.com>
|
||||
CMD [ "bash" ]
|
||||
|
||||
## Installed packages
|
||||
|
||||
All images install the following packages:
|
||||
|
||||
* basesystem-minimal
|
||||
* urpmi
|
||||
* locales
|
||||
* locales-en
|
||||
- basesystem-minimal
|
||||
- urpmi
|
||||
- locales
|
||||
- locales-en
|
||||
|
||||
# Supported Docker versions
|
||||
|
||||
|
|
@ -65,20 +48,12 @@ Support for older versions (down to 1.0) is provided on a best-effort basis.
|
|||
|
||||
## Issues
|
||||
|
||||
If you have any problems with or questions about this image, please contact us
|
||||
through a [GitHub issue](https://github.com/juanluisbaptiste/docker-brew-mageia/issues).
|
||||
If you have any problems with or questions about this image, please contact us through a [GitHub issue](https://github.com/juanluisbaptiste/docker-brew-mageia/issues).
|
||||
|
||||
You can also reach many of the official image maintainers via the
|
||||
`#docker-library` IRC channel on [Freenode](https://freenode.net).
|
||||
You can also reach many of the official image maintainers via the `#docker-library` IRC channel on [Freenode](https://freenode.net).
|
||||
|
||||
## Contributing
|
||||
|
||||
You are invited to contribute new features, fixes, or updates, large or small;
|
||||
we are always thrilled to receive pull requests, and do our best to process them
|
||||
as fast as we can.
|
||||
You are invited to contribute new features, fixes, or updates, large or small; we are always thrilled to receive pull requests, and do our best to process them as fast as we can.
|
||||
|
||||
Before you start to code, we recommend discussing your plans
|
||||
through a [GitHub issue](https://github.com/juanluisbaptiste/docker-brew-mageia/issues), especially for more ambitious
|
||||
contributions. This gives other contributors a chance to point you in the right
|
||||
direction, give you feedback on your design, and help you find out if someone
|
||||
else is working on the same thing.
|
||||
Before you start to code, we recommend discussing your plans through a [GitHub issue](https://github.com/juanluisbaptiste/docker-brew-mageia/issues), especially for more ambitious contributions. This gives other contributors a chance to point you in the right direction, give you feedback on your design, and help you find out if someone else is working on the same thing.
|
||||
|
|
|
|||
|
|
@ -1,45 +1,32 @@
|
|||
# What is Mageia?
|
||||
|
||||
[Mageia](http://www.mageia.org) is a GNU/Linux-based, Free Software operating
|
||||
system.It is a [community](https://www.mageia.org/en/community/) project,
|
||||
supported by [a nonprofit
|
||||
organisation](https://www.mageia.org/en/about/#mageia.org) of elected
|
||||
contributors.
|
||||
[Mageia](http://www.mageia.org) is a GNU/Linux-based, Free Software operating system.It is a [community](https://www.mageia.org/en/community/) project, supported by [a nonprofit organisation](https://www.mageia.org/en/about/#mageia.org) of elected contributors.
|
||||
|
||||
%%LOGO%%
|
||||
|
||||
Our mission: to build great tools for people.
|
||||
|
||||
Further than just delivering a secure, stable and sustainable operating system,
|
||||
the goal is to set up a stable and trustable governance to direct collaborative
|
||||
projects.
|
||||
Further than just delivering a secure, stable and sustainable operating system, the goal is to set up a stable and trustable governance to direct collaborative projects.
|
||||
|
||||
To date, Mageia:
|
||||
|
||||
- [started in September 2010 as a
|
||||
fork](https://www.mageia.org/en/about/2010-sept-announcement.html) of Mandriva
|
||||
Linux;
|
||||
- gathered hundreds of careful individuals and several companies worldwide,who
|
||||
coproduce the infrastructure, the distribution itself,
|
||||
[documentation](https://wiki.mageia.org/),
|
||||
[delivery](https://www.mageia.org/en/downloads/) and
|
||||
[support](https://www.mageia.org/en/support/), using Free Software tools;
|
||||
- released four major stable releases in June 2011, in May 2012, in May 2013 and
|
||||
in February 2014.
|
||||
- [started in September 2010 as a fork](https://www.mageia.org/en/about/2010-sept-announcement.html) of Mandriva Linux;
|
||||
- gathered hundreds of careful individuals and several companies worldwide,who coproduce the infrastructure, the distribution itself, [documentation](https://wiki.mageia.org/), [delivery](https://www.mageia.org/en/downloads/) and [support](https://www.mageia.org/en/support/), using Free Software tools;
|
||||
- released four major stable releases in June 2011, in May 2012, in May 2013 and in February 2014.
|
||||
|
||||
# How to use this image
|
||||
|
||||
## Create a Dockerfile for your container
|
||||
|
||||
FROM mageia:4
|
||||
MAINTAINER "Foo Bar" <foo@bar.com>
|
||||
CMD [ "bash" ]
|
||||
FROM mageia:4
|
||||
MAINTAINER "Foo Bar" <foo@bar.com>
|
||||
CMD [ "bash" ]
|
||||
|
||||
## Installed packages
|
||||
|
||||
All images install the following packages:
|
||||
|
||||
* basesystem-minimal
|
||||
* urpmi
|
||||
* locales
|
||||
* locales-en
|
||||
- basesystem-minimal
|
||||
- urpmi
|
||||
- locales
|
||||
- locales-en
|
||||
|
|
|
|||
|
|
@ -1,30 +1,16 @@
|
|||
# Supported tags and respective `Dockerfile` links
|
||||
|
||||
- [`10.0.16`, `10.0`, `10`, `latest` (*10.0/Dockerfile*)](https://github.com/docker-library/mariadb/blob/307bb762ff7e529eab7551fc31b13bccb808c674/10.0/Dockerfile)
|
||||
- [`10.1.2`, `10.1` (*10.1/Dockerfile*)](https://github.com/docker-library/mariadb/blob/307bb762ff7e529eab7551fc31b13bccb808c674/10.1/Dockerfile)
|
||||
- [`5.5.41`, `5.5`, `5` (*5.5/Dockerfile*)](https://github.com/docker-library/mariadb/blob/307bb762ff7e529eab7551fc31b13bccb808c674/5.5/Dockerfile)
|
||||
- [`10.0.16`, `10.0`, `10`, `latest` (*10.0/Dockerfile*)](https://github.com/docker-library/mariadb/blob/307bb762ff7e529eab7551fc31b13bccb808c674/10.0/Dockerfile)
|
||||
- [`10.1.2`, `10.1` (*10.1/Dockerfile*)](https://github.com/docker-library/mariadb/blob/307bb762ff7e529eab7551fc31b13bccb808c674/10.1/Dockerfile)
|
||||
- [`5.5.41`, `5.5`, `5` (*5.5/Dockerfile*)](https://github.com/docker-library/mariadb/blob/307bb762ff7e529eab7551fc31b13bccb808c674/5.5/Dockerfile)
|
||||
|
||||
For more information about this image and its history, please see the [relevant
|
||||
manifest file
|
||||
(`library/mariadb`)](https://github.com/docker-library/official-images/blob/master/library/mariadb)
|
||||
in the [`docker-library/official-images` GitHub
|
||||
repo](https://github.com/docker-library/official-images).
|
||||
For more information about this image and its history, please see the [relevant manifest file (`library/mariadb`)](https://github.com/docker-library/official-images/blob/master/library/mariadb) in the [`docker-library/official-images` GitHub repo](https://github.com/docker-library/official-images).
|
||||
|
||||
# What is MariaDB?
|
||||
|
||||
MariaDB is a community-developed fork of the MySQL relational database
|
||||
management system intended to remain free under the GNU GPL. Being a fork of a
|
||||
leading open source software system, it is notable for being led by the original
|
||||
developers of MySQL, who forked it due to concerns over its acquisition by
|
||||
Oracle. Contributors are required to share their copyright with the MariaDB
|
||||
Foundation.
|
||||
MariaDB is a community-developed fork of the MySQL relational database management system intended to remain free under the GNU GPL. Being a fork of a leading open source software system, it is notable for being led by the original developers of MySQL, who forked it due to concerns over its acquisition by Oracle. Contributors are required to share their copyright with the MariaDB Foundation.
|
||||
|
||||
The intent is also to maintain high compatibility with MySQL, ensuring a
|
||||
"drop-in" replacement capability with library binary equivalency and exact
|
||||
matching with MySQL APIs and commands. It includes the XtraDB storage engine for
|
||||
replacing InnoDB, as well as a new storage engine, Aria, that intends to be both
|
||||
a transactional and non-transactional engine perhaps even included in future
|
||||
versions of MySQL.
|
||||
The intent is also to maintain high compatibility with MySQL, ensuring a "drop-in" replacement capability with library binary equivalency and exact matching with MySQL APIs and commands. It includes the XtraDB storage engine for replacing InnoDB, as well as a new storage engine, Aria, that intends to be both a transactional and non-transactional engine perhaps even included in future versions of MySQL.
|
||||
|
||||
> [wikipedia.org/wiki/MariaDB](https://en.wikipedia.org/wiki/MariaDB)
|
||||
|
||||
|
|
@ -34,58 +20,39 @@ versions of MySQL.
|
|||
|
||||
## start a mariadb instance
|
||||
|
||||
docker run --name some-mariadb -e MYSQL_ROOT_PASSWORD=mysecretpassword -d mariadb
|
||||
docker run --name some-mariadb -e MYSQL_ROOT_PASSWORD=mysecretpassword -d mariadb
|
||||
|
||||
This image includes `EXPOSE 3306` (the mysql/mariadb port), so standard
|
||||
container linking will make it automatically available to the linked containers
|
||||
(as the following examples illustrate).
|
||||
This image includes `EXPOSE 3306` (the mysql/mariadb port), so standard container linking will make it automatically available to the linked containers (as the following examples illustrate).
|
||||
|
||||
## connect to it from an application
|
||||
|
||||
Since MariaDB is intended as a drop-in replacement for MySQL, it can be used
|
||||
with many applications.
|
||||
Since MariaDB is intended as a drop-in replacement for MySQL, it can be used with many applications.
|
||||
|
||||
docker run --name some-app --link some-mariadb:mysql -d application-that-uses-mysql
|
||||
docker run --name some-app --link some-mariadb:mysql -d application-that-uses-mysql
|
||||
|
||||
## ... or via `mysql`
|
||||
|
||||
docker run -it --link some-mariadb:mysql --rm mariadb sh -c 'exec mysql -h"$MYSQL_PORT_3306_TCP_ADDR" -P"$MYSQL_PORT_3306_TCP_PORT" -uroot -p"$MYSQL_ENV_MYSQL_ROOT_PASSWORD"'
|
||||
docker run -it --link some-mariadb:mysql --rm mariadb sh -c 'exec mysql -h"$MYSQL_PORT_3306_TCP_ADDR" -P"$MYSQL_PORT_3306_TCP_PORT" -uroot -p"$MYSQL_ENV_MYSQL_ROOT_PASSWORD"'
|
||||
|
||||
## Environment Variables
|
||||
|
||||
The MariaDB image uses several environment variables which are easy to miss. While
|
||||
not all the variables are required, they may significantly aid you in using the
|
||||
image. The variables use "MYSQL" since the MariaDB binary is `mysqld`.
|
||||
The MariaDB image uses several environment variables which are easy to miss. While not all the variables are required, they may significantly aid you in using the image. The variables use "MYSQL" since the MariaDB binary is `mysqld`.
|
||||
|
||||
### `MYSQL_ROOT_PASSWORD`
|
||||
|
||||
This is the one environment variable that is required for you to use the MariaDB
|
||||
image. This environment variable should be what you want to set the root
|
||||
password for MariaDB to. In the above example, it is being set to
|
||||
"mysecretpassword".
|
||||
This is the one environment variable that is required for you to use the MariaDB image. This environment variable should be what you want to set the root password for MariaDB to. In the above example, it is being set to "mysecretpassword".
|
||||
|
||||
### `MYSQL_USER`, `MYSQL_PASSWORD`
|
||||
|
||||
These optional environment variables are used in conjunction to set both a MariaDB
|
||||
user and password, which will subsequently be granted all permissions for the
|
||||
database specified by the optional `MYSQL_DATABASE` variable. Note that if you
|
||||
only have one of these two environment variables, then neither will actually do
|
||||
anything - these two are meant to be used in conjunction with one another.
|
||||
These optional environment variables are used in conjunction to set both a MariaDB user and password, which will subsequently be granted all permissions for the database specified by the optional `MYSQL_DATABASE` variable. Note that if you only have one of these two environment variables, then neither will actually do anything - these two are meant to be used in conjunction with one another.
|
||||
|
||||
### `MYSQL_DATABASE`
|
||||
|
||||
This optional environment variable denotes the name of a database to create. If
|
||||
a user/password was supplied (via the `MYSQL_USER` and `MYSQL_PASSWORD`
|
||||
environment variables) then that user account will be granted (`GRANT ALL`)
|
||||
access to this database.
|
||||
This optional environment variable denotes the name of a database to create. If a user/password was supplied (via the `MYSQL_USER` and `MYSQL_PASSWORD` environment variables) then that user account will be granted (`GRANT ALL`) access to this database.
|
||||
|
||||
# Caveats
|
||||
|
||||
If there is no database when `mariadb` starts in a container, then `mariadb` will
|
||||
create the default database for you. While this is the expected behavior of
|
||||
`mariadb`, this means that it will not accept incoming connections during that
|
||||
time. This may cause issues when using automation tools, such as `fig`, that
|
||||
start several containers simultaneously.
|
||||
If there is no database when `mariadb` starts in a container, then `mariadb` will create the default database for you. While this is the expected behavior of `mariadb`, this means that it will not accept incoming connections during that time. This may cause issues when using automation tools, such as `fig`, that start several containers simultaneously.
|
||||
|
||||
# Supported Docker versions
|
||||
|
||||
|
|
@ -97,20 +64,12 @@ Support for older versions (down to 1.0) is provided on a best-effort basis.
|
|||
|
||||
## Issues
|
||||
|
||||
If you have any problems with or questions about this image, please contact us
|
||||
through a [GitHub issue](https://github.com/docker-library/mariadb/issues).
|
||||
If you have any problems with or questions about this image, please contact us through a [GitHub issue](https://github.com/docker-library/mariadb/issues).
|
||||
|
||||
You can also reach many of the official image maintainers via the
|
||||
`#docker-library` IRC channel on [Freenode](https://freenode.net).
|
||||
You can also reach many of the official image maintainers via the `#docker-library` IRC channel on [Freenode](https://freenode.net).
|
||||
|
||||
## Contributing
|
||||
|
||||
You are invited to contribute new features, fixes, or updates, large or small;
|
||||
we are always thrilled to receive pull requests, and do our best to process them
|
||||
as fast as we can.
|
||||
You are invited to contribute new features, fixes, or updates, large or small; we are always thrilled to receive pull requests, and do our best to process them as fast as we can.
|
||||
|
||||
Before you start to code, we recommend discussing your plans
|
||||
through a [GitHub issue](https://github.com/docker-library/mariadb/issues), especially for more ambitious
|
||||
contributions. This gives other contributors a chance to point you in the right
|
||||
direction, give you feedback on your design, and help you find out if someone
|
||||
else is working on the same thing.
|
||||
Before you start to code, we recommend discussing your plans through a [GitHub issue](https://github.com/docker-library/mariadb/issues), especially for more ambitious contributions. This gives other contributors a chance to point you in the right direction, give you feedback on your design, and help you find out if someone else is working on the same thing.
|
||||
|
|
|
|||
|
|
@ -1,18 +1,8 @@
|
|||
# What is MariaDB?
|
||||
|
||||
MariaDB is a community-developed fork of the MySQL relational database
|
||||
management system intended to remain free under the GNU GPL. Being a fork of a
|
||||
leading open source software system, it is notable for being led by the original
|
||||
developers of MySQL, who forked it due to concerns over its acquisition by
|
||||
Oracle. Contributors are required to share their copyright with the MariaDB
|
||||
Foundation.
|
||||
MariaDB is a community-developed fork of the MySQL relational database management system intended to remain free under the GNU GPL. Being a fork of a leading open source software system, it is notable for being led by the original developers of MySQL, who forked it due to concerns over its acquisition by Oracle. Contributors are required to share their copyright with the MariaDB Foundation.
|
||||
|
||||
The intent is also to maintain high compatibility with MySQL, ensuring a
|
||||
"drop-in" replacement capability with library binary equivalency and exact
|
||||
matching with MySQL APIs and commands. It includes the XtraDB storage engine for
|
||||
replacing InnoDB, as well as a new storage engine, Aria, that intends to be both
|
||||
a transactional and non-transactional engine perhaps even included in future
|
||||
versions of MySQL.
|
||||
The intent is also to maintain high compatibility with MySQL, ensuring a "drop-in" replacement capability with library binary equivalency and exact matching with MySQL APIs and commands. It includes the XtraDB storage engine for replacing InnoDB, as well as a new storage engine, Aria, that intends to be both a transactional and non-transactional engine perhaps even included in future versions of MySQL.
|
||||
|
||||
> [wikipedia.org/wiki/MariaDB](https://en.wikipedia.org/wiki/MariaDB)
|
||||
|
||||
|
|
@ -22,55 +12,36 @@ versions of MySQL.
|
|||
|
||||
## start a mariadb instance
|
||||
|
||||
docker run --name some-mariadb -e MYSQL_ROOT_PASSWORD=mysecretpassword -d mariadb
|
||||
docker run --name some-mariadb -e MYSQL_ROOT_PASSWORD=mysecretpassword -d mariadb
|
||||
|
||||
This image includes `EXPOSE 3306` (the mysql/mariadb port), so standard
|
||||
container linking will make it automatically available to the linked containers
|
||||
(as the following examples illustrate).
|
||||
This image includes `EXPOSE 3306` (the mysql/mariadb port), so standard container linking will make it automatically available to the linked containers (as the following examples illustrate).
|
||||
|
||||
## connect to it from an application
|
||||
|
||||
Since MariaDB is intended as a drop-in replacement for MySQL, it can be used
|
||||
with many applications.
|
||||
Since MariaDB is intended as a drop-in replacement for MySQL, it can be used with many applications.
|
||||
|
||||
docker run --name some-app --link some-mariadb:mysql -d application-that-uses-mysql
|
||||
docker run --name some-app --link some-mariadb:mysql -d application-that-uses-mysql
|
||||
|
||||
## ... or via `mysql`
|
||||
|
||||
docker run -it --link some-mariadb:mysql --rm mariadb sh -c 'exec mysql -h"$MYSQL_PORT_3306_TCP_ADDR" -P"$MYSQL_PORT_3306_TCP_PORT" -uroot -p"$MYSQL_ENV_MYSQL_ROOT_PASSWORD"'
|
||||
docker run -it --link some-mariadb:mysql --rm mariadb sh -c 'exec mysql -h"$MYSQL_PORT_3306_TCP_ADDR" -P"$MYSQL_PORT_3306_TCP_PORT" -uroot -p"$MYSQL_ENV_MYSQL_ROOT_PASSWORD"'
|
||||
|
||||
## Environment Variables
|
||||
|
||||
The MariaDB image uses several environment variables which are easy to miss. While
|
||||
not all the variables are required, they may significantly aid you in using the
|
||||
image. The variables use "MYSQL" since the MariaDB binary is `mysqld`.
|
||||
The MariaDB image uses several environment variables which are easy to miss. While not all the variables are required, they may significantly aid you in using the image. The variables use "MYSQL" since the MariaDB binary is `mysqld`.
|
||||
|
||||
### `MYSQL_ROOT_PASSWORD`
|
||||
|
||||
This is the one environment variable that is required for you to use the MariaDB
|
||||
image. This environment variable should be what you want to set the root
|
||||
password for MariaDB to. In the above example, it is being set to
|
||||
"mysecretpassword".
|
||||
This is the one environment variable that is required for you to use the MariaDB image. This environment variable should be what you want to set the root password for MariaDB to. In the above example, it is being set to "mysecretpassword".
|
||||
|
||||
### `MYSQL_USER`, `MYSQL_PASSWORD`
|
||||
|
||||
These optional environment variables are used in conjunction to set both a MariaDB
|
||||
user and password, which will subsequently be granted all permissions for the
|
||||
database specified by the optional `MYSQL_DATABASE` variable. Note that if you
|
||||
only have one of these two environment variables, then neither will actually do
|
||||
anything - these two are meant to be used in conjunction with one another.
|
||||
These optional environment variables are used in conjunction to set both a MariaDB user and password, which will subsequently be granted all permissions for the database specified by the optional `MYSQL_DATABASE` variable. Note that if you only have one of these two environment variables, then neither will actually do anything - these two are meant to be used in conjunction with one another.
|
||||
|
||||
### `MYSQL_DATABASE`
|
||||
|
||||
This optional environment variable denotes the name of a database to create. If
|
||||
a user/password was supplied (via the `MYSQL_USER` and `MYSQL_PASSWORD`
|
||||
environment variables) then that user account will be granted (`GRANT ALL`)
|
||||
access to this database.
|
||||
This optional environment variable denotes the name of a database to create. If a user/password was supplied (via the `MYSQL_USER` and `MYSQL_PASSWORD` environment variables) then that user account will be granted (`GRANT ALL`) access to this database.
|
||||
|
||||
# Caveats
|
||||
|
||||
If there is no database when `mariadb` starts in a container, then `mariadb` will
|
||||
create the default database for you. While this is the expected behavior of
|
||||
`mariadb`, this means that it will not accept incoming connections during that
|
||||
time. This may cause issues when using automation tools, such as `fig`, that
|
||||
start several containers simultaneously.
|
||||
If there is no database when `mariadb` starts in a container, then `mariadb` will create the default database for you. While this is the expected behavior of `mariadb`, this means that it will not accept incoming connections during that time. This may cause issues when using automation tools, such as `fig`, that start several containers simultaneously.
|
||||
|
|
|
|||
|
|
@ -0,0 +1,4 @@
|
|||
#!/bin/bash
|
||||
set -e
|
||||
|
||||
exec docker run -it --rm -v "$PWD":/scratch -w /scratch tianon/markdownfmt markdownfmt "$@"
|
||||
|
|
@ -1,25 +1,17 @@
|
|||
# Supported tags and respective `Dockerfile` links
|
||||
|
||||
- [`3.2.5-jdk-6`, `3.2-jdk-6`, `3-jdk-6` (*jdk-6/Dockerfile*)](https://github.com/carlossg/docker-maven/blob/84b934b2349c83b4ebda7f668b71ba53e60e9c83/jdk-6/Dockerfile)
|
||||
- [`3.2.5-jdk-6-onbuild`, `3.2-jdk-6-onbuild`, `3-jdk-6-onbuild` (*jdk-6/onbuild/Dockerfile*)](https://github.com/carlossg/docker-maven/blob/b022df671b603a9100ed9e75803ae32f753826a4/jdk-6/onbuild/Dockerfile)
|
||||
- [`3.2.5-jdk-7`, `3.2.5`, `3.2-jdk-7`, `3.2`, `3-jdk-7`, `3`, `latest` (*jdk-7/Dockerfile*)](https://github.com/carlossg/docker-maven/blob/84b934b2349c83b4ebda7f668b71ba53e60e9c83/jdk-7/Dockerfile)
|
||||
- [`3.2.5-jdk-7-onbuild`, `3.2.5-onbuild`, `3.2-jdk-7-onbuild`, `3.2-onbuild`, `3-jdk-7-onbuild`, `3-onbuild`, `onbuild` (*jdk-7/onbuild/Dockerfile*)](https://github.com/carlossg/docker-maven/blob/b022df671b603a9100ed9e75803ae32f753826a4/jdk-7/onbuild/Dockerfile)
|
||||
- [`3.2.5-jdk-8`, `3.2-jdk-8`, `3-jdk-8` (*jdk-8/Dockerfile*)](https://github.com/carlossg/docker-maven/blob/84b934b2349c83b4ebda7f668b71ba53e60e9c83/jdk-8/Dockerfile)
|
||||
- [`3.2.5-jdk-8-onbuild`, `3.2-jdk-8-onbuild`, `3-jdk-8-onbuild` (*jdk-8/onbuild/Dockerfile*)](https://github.com/carlossg/docker-maven/blob/b022df671b603a9100ed9e75803ae32f753826a4/jdk-8/onbuild/Dockerfile)
|
||||
- [`3.2.5-jdk-6`, `3.2-jdk-6`, `3-jdk-6` (*jdk-6/Dockerfile*)](https://github.com/carlossg/docker-maven/blob/84b934b2349c83b4ebda7f668b71ba53e60e9c83/jdk-6/Dockerfile)
|
||||
- [`3.2.5-jdk-6-onbuild`, `3.2-jdk-6-onbuild`, `3-jdk-6-onbuild` (*jdk-6/onbuild/Dockerfile*)](https://github.com/carlossg/docker-maven/blob/b022df671b603a9100ed9e75803ae32f753826a4/jdk-6/onbuild/Dockerfile)
|
||||
- [`3.2.5-jdk-7`, `3.2.5`, `3.2-jdk-7`, `3.2`, `3-jdk-7`, `3`, `latest` (*jdk-7/Dockerfile*)](https://github.com/carlossg/docker-maven/blob/84b934b2349c83b4ebda7f668b71ba53e60e9c83/jdk-7/Dockerfile)
|
||||
- [`3.2.5-jdk-7-onbuild`, `3.2.5-onbuild`, `3.2-jdk-7-onbuild`, `3.2-onbuild`, `3-jdk-7-onbuild`, `3-onbuild`, `onbuild` (*jdk-7/onbuild/Dockerfile*)](https://github.com/carlossg/docker-maven/blob/b022df671b603a9100ed9e75803ae32f753826a4/jdk-7/onbuild/Dockerfile)
|
||||
- [`3.2.5-jdk-8`, `3.2-jdk-8`, `3-jdk-8` (*jdk-8/Dockerfile*)](https://github.com/carlossg/docker-maven/blob/84b934b2349c83b4ebda7f668b71ba53e60e9c83/jdk-8/Dockerfile)
|
||||
- [`3.2.5-jdk-8-onbuild`, `3.2-jdk-8-onbuild`, `3-jdk-8-onbuild` (*jdk-8/onbuild/Dockerfile*)](https://github.com/carlossg/docker-maven/blob/b022df671b603a9100ed9e75803ae32f753826a4/jdk-8/onbuild/Dockerfile)
|
||||
|
||||
For more information about this image and its history, please see the [relevant
|
||||
manifest file
|
||||
(`library/maven`)](https://github.com/docker-library/official-images/blob/master/library/maven)
|
||||
in the [`docker-library/official-images` GitHub
|
||||
repo](https://github.com/docker-library/official-images).
|
||||
For more information about this image and its history, please see the [relevant manifest file (`library/maven`)](https://github.com/docker-library/official-images/blob/master/library/maven) in the [`docker-library/official-images` GitHub repo](https://github.com/docker-library/official-images).
|
||||
|
||||
# What is Maven?
|
||||
|
||||
[Apache Maven](http://maven.apache.org) is a software project management and
|
||||
comprehension tool.
|
||||
Based on the concept of a project object model (POM),
|
||||
Maven can manage a project's build,
|
||||
reporting and documentation from a central piece of information.
|
||||
[Apache Maven](http://maven.apache.org) is a software project management and comprehension tool. Based on the concept of a project object model (POM), Maven can manage a project's build, reporting and documentation from a central piece of information.
|
||||
|
||||

|
||||
|
||||
|
|
@ -27,34 +19,27 @@ reporting and documentation from a central piece of information.
|
|||
|
||||
## Create a Dockerfile in your Maven project
|
||||
|
||||
FROM maven:3.2-jdk-7-onbuild
|
||||
CMD ["do-something-with-built-packages"]
|
||||
FROM maven:3.2-jdk-7-onbuild
|
||||
CMD ["do-something-with-built-packages"]
|
||||
|
||||
Put this file in the root of your project, next to the pom.xml.
|
||||
|
||||
This image includes multiple ONBUILD triggers which should be all you need to
|
||||
bootstrap.
|
||||
The build will `COPY . /usr/src/app` and `RUN mvn install`.
|
||||
This image includes multiple ONBUILD triggers which should be all you need to bootstrap. The build will `COPY . /usr/src/app` and `RUN mvn install`.
|
||||
|
||||
You can then build and run the image:
|
||||
|
||||
docker build -t my-maven .
|
||||
docker run -it --name my-maven-script my-maven
|
||||
|
||||
docker build -t my-maven .
|
||||
docker run -it --name my-maven-script my-maven
|
||||
|
||||
## Run a single Maven command
|
||||
|
||||
For many simple projects, you may find it inconvenient to write a complete
|
||||
`Dockerfile`.
|
||||
In such cases, you can run a Maven project by using the Maven Docker image
|
||||
directly, passing a Maven command to `docker run`:
|
||||
For many simple projects, you may find it inconvenient to write a complete `Dockerfile`. In such cases, you can run a Maven project by using the Maven Docker image directly, passing a Maven command to `docker run`:
|
||||
|
||||
docker run -it --rm --name my-maven-project -v "$PWD":/usr/src/mymaven -w /usr/src/mymaven maven:3.2-jdk-7 mvn clean install
|
||||
docker run -it --rm --name my-maven-project -v "$PWD":/usr/src/mymaven -w /usr/src/mymaven maven:3.2-jdk-7 mvn clean install
|
||||
|
||||
# License
|
||||
|
||||
View [license information](https://www.apache.org/licenses/) for the software
|
||||
contained in this image.
|
||||
View [license information](https://www.apache.org/licenses/) for the software contained in this image.
|
||||
|
||||
# Supported Docker versions
|
||||
|
||||
|
|
@ -66,20 +51,12 @@ Support for older versions (down to 1.0) is provided on a best-effort basis.
|
|||
|
||||
## Issues
|
||||
|
||||
If you have any problems with or questions about this image, please contact us
|
||||
through a [GitHub issue](https://github.com/carlossg/docker-maven/issues).
|
||||
If you have any problems with or questions about this image, please contact us through a [GitHub issue](https://github.com/carlossg/docker-maven/issues).
|
||||
|
||||
You can also reach many of the official image maintainers via the
|
||||
`#docker-library` IRC channel on [Freenode](https://freenode.net).
|
||||
You can also reach many of the official image maintainers via the `#docker-library` IRC channel on [Freenode](https://freenode.net).
|
||||
|
||||
## Contributing
|
||||
|
||||
You are invited to contribute new features, fixes, or updates, large or small;
|
||||
we are always thrilled to receive pull requests, and do our best to process them
|
||||
as fast as we can.
|
||||
You are invited to contribute new features, fixes, or updates, large or small; we are always thrilled to receive pull requests, and do our best to process them as fast as we can.
|
||||
|
||||
Before you start to code, we recommend discussing your plans
|
||||
through a [GitHub issue](https://github.com/carlossg/docker-maven/issues), especially for more ambitious
|
||||
contributions. This gives other contributors a chance to point you in the right
|
||||
direction, give you feedback on your design, and help you find out if someone
|
||||
else is working on the same thing.
|
||||
Before you start to code, we recommend discussing your plans through a [GitHub issue](https://github.com/carlossg/docker-maven/issues), especially for more ambitious contributions. This gives other contributors a chance to point you in the right direction, give you feedback on your design, and help you find out if someone else is working on the same thing.
|
||||
|
|
|
|||
|
|
@ -1,10 +1,6 @@
|
|||
# What is Maven?
|
||||
|
||||
[Apache Maven](http://maven.apache.org) is a software project management and
|
||||
comprehension tool.
|
||||
Based on the concept of a project object model (POM),
|
||||
Maven can manage a project's build,
|
||||
reporting and documentation from a central piece of information.
|
||||
[Apache Maven](http://maven.apache.org) is a software project management and comprehension tool. Based on the concept of a project object model (POM), Maven can manage a project's build, reporting and documentation from a central piece of information.
|
||||
|
||||
%%LOGO%%
|
||||
|
||||
|
|
@ -12,26 +8,20 @@ reporting and documentation from a central piece of information.
|
|||
|
||||
## Create a Dockerfile in your Maven project
|
||||
|
||||
FROM maven:3.2-jdk-7-onbuild
|
||||
CMD ["do-something-with-built-packages"]
|
||||
FROM maven:3.2-jdk-7-onbuild
|
||||
CMD ["do-something-with-built-packages"]
|
||||
|
||||
Put this file in the root of your project, next to the pom.xml.
|
||||
|
||||
This image includes multiple ONBUILD triggers which should be all you need to
|
||||
bootstrap.
|
||||
The build will `COPY . /usr/src/app` and `RUN mvn install`.
|
||||
This image includes multiple ONBUILD triggers which should be all you need to bootstrap. The build will `COPY . /usr/src/app` and `RUN mvn install`.
|
||||
|
||||
You can then build and run the image:
|
||||
|
||||
docker build -t my-maven .
|
||||
docker run -it --name my-maven-script my-maven
|
||||
|
||||
docker build -t my-maven .
|
||||
docker run -it --name my-maven-script my-maven
|
||||
|
||||
## Run a single Maven command
|
||||
|
||||
For many simple projects, you may find it inconvenient to write a complete
|
||||
`Dockerfile`.
|
||||
In such cases, you can run a Maven project by using the Maven Docker image
|
||||
directly, passing a Maven command to `docker run`:
|
||||
For many simple projects, you may find it inconvenient to write a complete `Dockerfile`. In such cases, you can run a Maven project by using the Maven Docker image directly, passing a Maven command to `docker run`:
|
||||
|
||||
docker run -it --rm --name my-maven-project -v "$PWD":/usr/src/mymaven -w /usr/src/mymaven maven:3.2-jdk-7 mvn clean install
|
||||
docker run -it --rm --name my-maven-project -v "$PWD":/usr/src/mymaven -w /usr/src/mymaven maven:3.2-jdk-7 mvn clean install
|
||||
|
|
|
|||
|
|
@ -1,2 +1 @@
|
|||
View [license information](https://www.apache.org/licenses/) for the software
|
||||
contained in this image.
|
||||
View [license information](https://www.apache.org/licenses/) for the software contained in this image.
|
||||
|
|
|
|||
|
|
@ -1,48 +1,32 @@
|
|||
# Supported tags and respective `Dockerfile` links
|
||||
|
||||
- [`1.4.22`, `1.4`, `1`, `latest` (*Dockerfile*)](https://github.com/docker-library/memcached/blob/5fb6459a1eb138dcd9cfcd5fa1aef62ee511d335/Dockerfile)
|
||||
- [`1.4.22`, `1.4`, `1`, `latest` (*Dockerfile*)](https://github.com/docker-library/memcached/blob/5fb6459a1eb138dcd9cfcd5fa1aef62ee511d335/Dockerfile)
|
||||
|
||||
For more information about this image and its history, please see the [relevant
|
||||
manifest file
|
||||
(`library/memcached`)](https://github.com/docker-library/official-images/blob/master/library/memcached)
|
||||
in the [`docker-library/official-images` GitHub
|
||||
repo](https://github.com/docker-library/official-images).
|
||||
For more information about this image and its history, please see the [relevant manifest file (`library/memcached`)](https://github.com/docker-library/official-images/blob/master/library/memcached) in the [`docker-library/official-images` GitHub repo](https://github.com/docker-library/official-images).
|
||||
|
||||
# What is Memcached?
|
||||
|
||||
Memcached is a general-purpose distributed memory caching system. It is often
|
||||
used to speed up dynamic database-driven websites by caching data and objects in
|
||||
RAM to reduce the number of times an external data source (such as a database or
|
||||
API) must be read.
|
||||
Memcached is a general-purpose distributed memory caching system. It is often used to speed up dynamic database-driven websites by caching data and objects in RAM to reduce the number of times an external data source (such as a database or API) must be read.
|
||||
|
||||
Memcached's APIs provide a very large hash table distributed across multiple
|
||||
machines. When the table is full, subsequent inserts cause older data to be
|
||||
purged in least recently used order. Applications using Memcached typically
|
||||
layer requests and additions into RAM before falling back on a slower backing
|
||||
store, such as a database.
|
||||
Memcached's APIs provide a very large hash table distributed across multiple machines. When the table is full, subsequent inserts cause older data to be purged in least recently used order. Applications using Memcached typically layer requests and additions into RAM before falling back on a slower backing store, such as a database.
|
||||
|
||||
> [wikipedia.org/wiki/Memcached](https://en.wikipedia.org/wiki/Memcached)
|
||||
|
||||
# How to use this image
|
||||
|
||||
docker run --name my-memcache -d memcached
|
||||
docker run --name my-memcache -d memcached
|
||||
|
||||
Start your memcached container with the above command and then you can connect
|
||||
you app to it with standard linking:
|
||||
Start your memcached container with the above command and then you can connect you app to it with standard linking:
|
||||
|
||||
docker run --link my-memcache:memcache -d my-app-image
|
||||
docker run --link my-memcache:memcache -d my-app-image
|
||||
|
||||
The memcached server information would then be available through the ENV
|
||||
variables generated by the link as well as through DNS as `memcache` from
|
||||
`/etc/hosts`.
|
||||
The memcached server information would then be available through the ENV variables generated by the link as well as through DNS as `memcache` from `/etc/hosts`.
|
||||
|
||||
For infomation on configuring your memcached server, see the extensive [wiki](https://code.google.com/p/memcached/wiki/NewStart).
|
||||
|
||||
# License
|
||||
|
||||
View [license
|
||||
information](https://github.com/memcached/memcached/blob/master/LICENSE) for the
|
||||
software contained in this image.
|
||||
View [license information](https://github.com/memcached/memcached/blob/master/LICENSE) for the software contained in this image.
|
||||
|
||||
# Supported Docker versions
|
||||
|
||||
|
|
@ -54,20 +38,12 @@ Support for older versions (down to 1.0) is provided on a best-effort basis.
|
|||
|
||||
## Issues
|
||||
|
||||
If you have any problems with or questions about this image, please contact us
|
||||
through a [GitHub issue](https://github.com/docker-library/memcached/issues).
|
||||
If you have any problems with or questions about this image, please contact us through a [GitHub issue](https://github.com/docker-library/memcached/issues).
|
||||
|
||||
You can also reach many of the official image maintainers via the
|
||||
`#docker-library` IRC channel on [Freenode](https://freenode.net).
|
||||
You can also reach many of the official image maintainers via the `#docker-library` IRC channel on [Freenode](https://freenode.net).
|
||||
|
||||
## Contributing
|
||||
|
||||
You are invited to contribute new features, fixes, or updates, large or small;
|
||||
we are always thrilled to receive pull requests, and do our best to process them
|
||||
as fast as we can.
|
||||
You are invited to contribute new features, fixes, or updates, large or small; we are always thrilled to receive pull requests, and do our best to process them as fast as we can.
|
||||
|
||||
Before you start to code, we recommend discussing your plans
|
||||
through a [GitHub issue](https://github.com/docker-library/memcached/issues), especially for more ambitious
|
||||
contributions. This gives other contributors a chance to point you in the right
|
||||
direction, give you feedback on your design, and help you find out if someone
|
||||
else is working on the same thing.
|
||||
Before you start to code, we recommend discussing your plans through a [GitHub issue](https://github.com/docker-library/memcached/issues), especially for more ambitious contributions. This gives other contributors a chance to point you in the right direction, give you feedback on your design, and help you find out if someone else is working on the same thing.
|
||||
|
|
|
|||
|
|
@ -1,29 +1,19 @@
|
|||
# What is Memcached?
|
||||
|
||||
Memcached is a general-purpose distributed memory caching system. It is often
|
||||
used to speed up dynamic database-driven websites by caching data and objects in
|
||||
RAM to reduce the number of times an external data source (such as a database or
|
||||
API) must be read.
|
||||
Memcached is a general-purpose distributed memory caching system. It is often used to speed up dynamic database-driven websites by caching data and objects in RAM to reduce the number of times an external data source (such as a database or API) must be read.
|
||||
|
||||
Memcached's APIs provide a very large hash table distributed across multiple
|
||||
machines. When the table is full, subsequent inserts cause older data to be
|
||||
purged in least recently used order. Applications using Memcached typically
|
||||
layer requests and additions into RAM before falling back on a slower backing
|
||||
store, such as a database.
|
||||
Memcached's APIs provide a very large hash table distributed across multiple machines. When the table is full, subsequent inserts cause older data to be purged in least recently used order. Applications using Memcached typically layer requests and additions into RAM before falling back on a slower backing store, such as a database.
|
||||
|
||||
> [wikipedia.org/wiki/Memcached](https://en.wikipedia.org/wiki/Memcached)
|
||||
|
||||
# How to use this image
|
||||
|
||||
docker run --name my-memcache -d memcached
|
||||
docker run --name my-memcache -d memcached
|
||||
|
||||
Start your memcached container with the above command and then you can connect
|
||||
you app to it with standard linking:
|
||||
Start your memcached container with the above command and then you can connect you app to it with standard linking:
|
||||
|
||||
docker run --link my-memcache:memcache -d my-app-image
|
||||
docker run --link my-memcache:memcache -d my-app-image
|
||||
|
||||
The memcached server information would then be available through the ENV
|
||||
variables generated by the link as well as through DNS as `memcache` from
|
||||
`/etc/hosts`.
|
||||
The memcached server information would then be available through the ENV variables generated by the link as well as through DNS as `memcache` from `/etc/hosts`.
|
||||
|
||||
For infomation on configuring your memcached server, see the extensive [wiki](https://code.google.com/p/memcached/wiki/NewStart).
|
||||
|
|
|
|||
|
|
@ -1,3 +1 @@
|
|||
View [license
|
||||
information](https://github.com/memcached/memcached/blob/master/LICENSE) for the
|
||||
software contained in this image.
|
||||
View [license information](https://github.com/memcached/memcached/blob/master/LICENSE) for the software contained in this image.
|
||||
|
|
|
|||
|
|
@ -1,33 +1,17 @@
|
|||
# Supported tags and respective `Dockerfile` links
|
||||
|
||||
- [`2.2.7`, `2.2` (*2.2/Dockerfile*)](https://github.com/docker-library/mongo/blob/d9fb48dbdb0b9c35d35902429fe1a28527959f25/2.2/Dockerfile)
|
||||
- [`2.4.12`, `2.4` (*2.4/Dockerfile*)](https://github.com/docker-library/mongo/blob/d9fb48dbdb0b9c35d35902429fe1a28527959f25/2.4/Dockerfile)
|
||||
- [`2.6.7`, `2.6`, `2`, `latest` (*2.6/Dockerfile*)](https://github.com/docker-library/mongo/blob/1d641659a75cf2f8ce1b517c7fc2a0ebfd033eed/2.6/Dockerfile)
|
||||
- [`3.0.0-rc8`, `3.0.0`, `3.0` (*3.0/Dockerfile*)](https://github.com/docker-library/mongo/blob/f8371828ff30af2479b768bd39e0646ab13a1d40/3.0/Dockerfile)
|
||||
- [`2.2.7`, `2.2` (*2.2/Dockerfile*)](https://github.com/docker-library/mongo/blob/d9fb48dbdb0b9c35d35902429fe1a28527959f25/2.2/Dockerfile)
|
||||
- [`2.4.12`, `2.4` (*2.4/Dockerfile*)](https://github.com/docker-library/mongo/blob/d9fb48dbdb0b9c35d35902429fe1a28527959f25/2.4/Dockerfile)
|
||||
- [`2.6.7`, `2.6`, `2`, `latest` (*2.6/Dockerfile*)](https://github.com/docker-library/mongo/blob/1d641659a75cf2f8ce1b517c7fc2a0ebfd033eed/2.6/Dockerfile)
|
||||
- [`3.0.0-rc8`, `3.0.0`, `3.0` (*3.0/Dockerfile*)](https://github.com/docker-library/mongo/blob/f8371828ff30af2479b768bd39e0646ab13a1d40/3.0/Dockerfile)
|
||||
|
||||
For more information about this image and its history, please see the [relevant
|
||||
manifest file
|
||||
(`library/mongo`)](https://github.com/docker-library/official-images/blob/master/library/mongo)
|
||||
in the [`docker-library/official-images` GitHub
|
||||
repo](https://github.com/docker-library/official-images).
|
||||
For more information about this image and its history, please see the [relevant manifest file (`library/mongo`)](https://github.com/docker-library/official-images/blob/master/library/mongo) in the [`docker-library/official-images` GitHub repo](https://github.com/docker-library/official-images).
|
||||
|
||||
# What is MongoDB?
|
||||
|
||||
MongoDB (from "humongous") is a cross-platform document-oriented database.
|
||||
Classified as a NoSQL database, MongoDB eschews the traditional table-based
|
||||
relational database structure in favor of JSON-like documents with dynamic
|
||||
schemas (MongoDB calls the format BSON), making the integration of data in
|
||||
certain types of applications easier and faster. Released under a combination of
|
||||
the GNU Affero General Public License and the Apache License, MongoDB is free
|
||||
and open-source software.
|
||||
MongoDB (from "humongous") is a cross-platform document-oriented database. Classified as a NoSQL database, MongoDB eschews the traditional table-based relational database structure in favor of JSON-like documents with dynamic schemas (MongoDB calls the format BSON), making the integration of data in certain types of applications easier and faster. Released under a combination of the GNU Affero General Public License and the Apache License, MongoDB is free and open-source software.
|
||||
|
||||
First developed by the software company 10gen (now MongoDB Inc.) in October 2007
|
||||
as a component of a planned platform as a service product, the company shifted
|
||||
to an open source development model in 2009, with 10gen offering commercial
|
||||
support and other services. Since then, MongoDB has been adopted as backend
|
||||
software by a number of major websites and services, including Craigslist, eBay,
|
||||
Foursquare, SourceForge, Viacom, and the New York Times, among others. MongoDB
|
||||
is the most popular NoSQL database system.
|
||||
First developed by the software company 10gen (now MongoDB Inc.) in October 2007 as a component of a planned platform as a service product, the company shifted to an open source development model in 2009, with 10gen offering commercial support and other services. Since then, MongoDB has been adopted as backend software by a number of major websites and services, including Craigslist, eBay, Foursquare, SourceForge, Viacom, and the New York Times, among others. MongoDB is the most popular NoSQL database system.
|
||||
|
||||
> [wikipedia.org/wiki/MongoDB](https://en.wikipedia.org/wiki/MongoDB)
|
||||
|
||||
|
|
@ -37,30 +21,25 @@ is the most popular NoSQL database system.
|
|||
|
||||
## start a mongo instance
|
||||
|
||||
docker run --name some-mongo -d mongo
|
||||
docker run --name some-mongo -d mongo
|
||||
|
||||
This image includes `EXPOSE 27017` (the mongo port), so standard container
|
||||
linking will make it automatically available to the linked containers (as the
|
||||
following examples illustrate).
|
||||
This image includes `EXPOSE 27017` (the mongo port), so standard container linking will make it automatically available to the linked containers (as the following examples illustrate).
|
||||
|
||||
## connect to it from an application
|
||||
|
||||
docker run --name some-app --link some-mongo:mongo -d application-that-uses-mongo
|
||||
docker run --name some-app --link some-mongo:mongo -d application-that-uses-mongo
|
||||
|
||||
## ... or via `mongo`
|
||||
|
||||
docker run -it --link some-mongo:mongo --rm mongo sh -c 'exec mongo "$MONGO_PORT_27017_TCP_ADDR:$MONGO_PORT_27017_TCP_PORT/test"'
|
||||
docker run -it --link some-mongo:mongo --rm mongo sh -c 'exec mongo "$MONGO_PORT_27017_TCP_ADDR:$MONGO_PORT_27017_TCP_PORT/test"'
|
||||
|
||||
## Configuration
|
||||
|
||||
See the [official docs](http://docs.mongodb.org/manual/) for infomation on using
|
||||
and configuring MongoDB for things like replica sets and sharding.
|
||||
See the [official docs](http://docs.mongodb.org/manual/) for infomation on using and configuring MongoDB for things like replica sets and sharding.
|
||||
|
||||
# License
|
||||
|
||||
View [license
|
||||
information](https://github.com/mongodb/mongo/blob/7c3cfac300cfcca4f73f1c3b18457f0f8fae3f69/README#L71)
|
||||
for the software contained in this image.
|
||||
View [license information](https://github.com/mongodb/mongo/blob/7c3cfac300cfcca4f73f1c3b18457f0f8fae3f69/README#L71) for the software contained in this image.
|
||||
|
||||
# Supported Docker versions
|
||||
|
||||
|
|
@ -72,20 +51,12 @@ Support for older versions (down to 1.0) is provided on a best-effort basis.
|
|||
|
||||
## Issues
|
||||
|
||||
If you have any problems with or questions about this image, please contact us
|
||||
through a [GitHub issue](https://github.com/docker-library/mongo/issues).
|
||||
If you have any problems with or questions about this image, please contact us through a [GitHub issue](https://github.com/docker-library/mongo/issues).
|
||||
|
||||
You can also reach many of the official image maintainers via the
|
||||
`#docker-library` IRC channel on [Freenode](https://freenode.net).
|
||||
You can also reach many of the official image maintainers via the `#docker-library` IRC channel on [Freenode](https://freenode.net).
|
||||
|
||||
## Contributing
|
||||
|
||||
You are invited to contribute new features, fixes, or updates, large or small;
|
||||
we are always thrilled to receive pull requests, and do our best to process them
|
||||
as fast as we can.
|
||||
You are invited to contribute new features, fixes, or updates, large or small; we are always thrilled to receive pull requests, and do our best to process them as fast as we can.
|
||||
|
||||
Before you start to code, we recommend discussing your plans
|
||||
through a [GitHub issue](https://github.com/docker-library/mongo/issues), especially for more ambitious
|
||||
contributions. This gives other contributors a chance to point you in the right
|
||||
direction, give you feedback on your design, and help you find out if someone
|
||||
else is working on the same thing.
|
||||
Before you start to code, we recommend discussing your plans through a [GitHub issue](https://github.com/docker-library/mongo/issues), especially for more ambitious contributions. This gives other contributors a chance to point you in the right direction, give you feedback on your design, and help you find out if someone else is working on the same thing.
|
||||
|
|
|
|||
|
|
@ -1,20 +1,8 @@
|
|||
# What is MongoDB?
|
||||
|
||||
MongoDB (from "humongous") is a cross-platform document-oriented database.
|
||||
Classified as a NoSQL database, MongoDB eschews the traditional table-based
|
||||
relational database structure in favor of JSON-like documents with dynamic
|
||||
schemas (MongoDB calls the format BSON), making the integration of data in
|
||||
certain types of applications easier and faster. Released under a combination of
|
||||
the GNU Affero General Public License and the Apache License, MongoDB is free
|
||||
and open-source software.
|
||||
MongoDB (from "humongous") is a cross-platform document-oriented database. Classified as a NoSQL database, MongoDB eschews the traditional table-based relational database structure in favor of JSON-like documents with dynamic schemas (MongoDB calls the format BSON), making the integration of data in certain types of applications easier and faster. Released under a combination of the GNU Affero General Public License and the Apache License, MongoDB is free and open-source software.
|
||||
|
||||
First developed by the software company 10gen (now MongoDB Inc.) in October 2007
|
||||
as a component of a planned platform as a service product, the company shifted
|
||||
to an open source development model in 2009, with 10gen offering commercial
|
||||
support and other services. Since then, MongoDB has been adopted as backend
|
||||
software by a number of major websites and services, including Craigslist, eBay,
|
||||
Foursquare, SourceForge, Viacom, and the New York Times, among others. MongoDB
|
||||
is the most popular NoSQL database system.
|
||||
First developed by the software company 10gen (now MongoDB Inc.) in October 2007 as a component of a planned platform as a service product, the company shifted to an open source development model in 2009, with 10gen offering commercial support and other services. Since then, MongoDB has been adopted as backend software by a number of major websites and services, including Craigslist, eBay, Foursquare, SourceForge, Viacom, and the New York Times, among others. MongoDB is the most popular NoSQL database system.
|
||||
|
||||
> [wikipedia.org/wiki/MongoDB](https://en.wikipedia.org/wiki/MongoDB)
|
||||
|
||||
|
|
@ -24,21 +12,18 @@ is the most popular NoSQL database system.
|
|||
|
||||
## start a mongo instance
|
||||
|
||||
docker run --name some-mongo -d mongo
|
||||
docker run --name some-mongo -d mongo
|
||||
|
||||
This image includes `EXPOSE 27017` (the mongo port), so standard container
|
||||
linking will make it automatically available to the linked containers (as the
|
||||
following examples illustrate).
|
||||
This image includes `EXPOSE 27017` (the mongo port), so standard container linking will make it automatically available to the linked containers (as the following examples illustrate).
|
||||
|
||||
## connect to it from an application
|
||||
|
||||
docker run --name some-app --link some-mongo:mongo -d application-that-uses-mongo
|
||||
docker run --name some-app --link some-mongo:mongo -d application-that-uses-mongo
|
||||
|
||||
## ... or via `mongo`
|
||||
|
||||
docker run -it --link some-mongo:mongo --rm mongo sh -c 'exec mongo "$MONGO_PORT_27017_TCP_ADDR:$MONGO_PORT_27017_TCP_PORT/test"'
|
||||
docker run -it --link some-mongo:mongo --rm mongo sh -c 'exec mongo "$MONGO_PORT_27017_TCP_ADDR:$MONGO_PORT_27017_TCP_PORT/test"'
|
||||
|
||||
## Configuration
|
||||
|
||||
See the [official docs](http://docs.mongodb.org/manual/) for infomation on using
|
||||
and configuring MongoDB for things like replica sets and sharding.
|
||||
See the [official docs](http://docs.mongodb.org/manual/) for infomation on using and configuring MongoDB for things like replica sets and sharding.
|
||||
|
|
|
|||
|
|
@ -1,3 +1 @@
|
|||
View [license
|
||||
information](https://github.com/mongodb/mongo/blob/7c3cfac300cfcca4f73f1c3b18457f0f8fae3f69/README#L71)
|
||||
for the software contained in this image.
|
||||
View [license information](https://github.com/mongodb/mongo/blob/7c3cfac300cfcca4f73f1c3b18457f0f8fae3f69/README#L71) for the software contained in this image.
|
||||
|
|
|
|||
|
|
@ -1,28 +1,20 @@
|
|||
# Supported tags and respective `Dockerfile` links
|
||||
|
||||
- [`3.10.0`, `3.10` (*3.10.0/Dockerfile*)](https://github.com/mono/docker/blob/2d7f8f39a10ab9fda43b33ba17f6985d1b2cd3d8/3.10.0/Dockerfile)
|
||||
- [`3.10.0-onbuild`, `3.10-onbuild` (*3.10.0/onbuild/Dockerfile*)](https://github.com/mono/docker/blob/66226b17125b72685c2022e4fecaee2716b0fb3a/3.10.0/onbuild/Dockerfile)
|
||||
- [`3.12.0`, `3.12`, `3`, `latest` (*3.12.0/Dockerfile*)](https://github.com/mono/docker/blob/2d7f8f39a10ab9fda43b33ba17f6985d1b2cd3d8/3.12.0/Dockerfile)
|
||||
- [`3.12.0-onbuild`, `3.12-onbuild`, `3-onbuild`, `onbuild` (*3.12.0/onbuild/Dockerfile*)](https://github.com/mono/docker/blob/66226b17125b72685c2022e4fecaee2716b0fb3a/3.12.0/onbuild/Dockerfile)
|
||||
- [`3.8.0`, `3.8` (*3.8.0/Dockerfile*)](https://github.com/mono/docker/blob/2d7f8f39a10ab9fda43b33ba17f6985d1b2cd3d8/3.8.0/Dockerfile)
|
||||
- [`3.8.0-onbuild`, `3.8-onbuild` (*3.8.0/onbuild/Dockerfile*)](https://github.com/mono/docker/blob/66226b17125b72685c2022e4fecaee2716b0fb3a/3.8.0/onbuild/Dockerfile)
|
||||
- [`3.10.0`, `3.10` (*3.10.0/Dockerfile*)](https://github.com/mono/docker/blob/2d7f8f39a10ab9fda43b33ba17f6985d1b2cd3d8/3.10.0/Dockerfile)
|
||||
- [`3.10.0-onbuild`, `3.10-onbuild` (*3.10.0/onbuild/Dockerfile*)](https://github.com/mono/docker/blob/66226b17125b72685c2022e4fecaee2716b0fb3a/3.10.0/onbuild/Dockerfile)
|
||||
- [`3.12.0`, `3.12`, `3`, `latest` (*3.12.0/Dockerfile*)](https://github.com/mono/docker/blob/2d7f8f39a10ab9fda43b33ba17f6985d1b2cd3d8/3.12.0/Dockerfile)
|
||||
- [`3.12.0-onbuild`, `3.12-onbuild`, `3-onbuild`, `onbuild` (*3.12.0/onbuild/Dockerfile*)](https://github.com/mono/docker/blob/66226b17125b72685c2022e4fecaee2716b0fb3a/3.12.0/onbuild/Dockerfile)
|
||||
- [`3.8.0`, `3.8` (*3.8.0/Dockerfile*)](https://github.com/mono/docker/blob/2d7f8f39a10ab9fda43b33ba17f6985d1b2cd3d8/3.8.0/Dockerfile)
|
||||
- [`3.8.0-onbuild`, `3.8-onbuild` (*3.8.0/onbuild/Dockerfile*)](https://github.com/mono/docker/blob/66226b17125b72685c2022e4fecaee2716b0fb3a/3.8.0/onbuild/Dockerfile)
|
||||
|
||||
For more information about this image and its history, please see the [relevant
|
||||
manifest file
|
||||
(`library/mono`)](https://github.com/docker-library/official-images/blob/master/library/mono)
|
||||
in the [`docker-library/official-images` GitHub
|
||||
repo](https://github.com/docker-library/official-images).
|
||||
For more information about this image and its history, please see the [relevant manifest file (`library/mono`)](https://github.com/docker-library/official-images/blob/master/library/mono) in the [`docker-library/official-images` GitHub repo](https://github.com/docker-library/official-images).
|
||||
|
||||
# What is Mono
|
||||
|
||||
Sponsored by Xamarin, Mono is an open source implementation of Microsoft's .NET
|
||||
Framework based on the ECMA standards for C# and the Common Language Runtime. A
|
||||
growing family of solutions and an active and enthusiastic contributing
|
||||
community is helping position Mono to become the leading choice for development
|
||||
of cross platform applications.
|
||||
Sponsored by Xamarin, Mono is an open source implementation of Microsoft's .NET Framework based on the ECMA standards for C# and the Common Language Runtime. A growing family of solutions and an active and enthusiastic contributing community is helping position Mono to become the leading choice for development of cross platform applications.
|
||||
|
||||
* [Mono Project homepage](http://www.mono-project.com/)
|
||||
* [http://en.wikipedia.org/wiki/Mono_(software)](http://en.wikipedia.org/wiki/Mono_(software))
|
||||
- [Mono Project homepage](http://www.mono-project.com/)
|
||||
- [http://en.wikipedia.org/wiki/Mono_(software)](http://en.wikipedia.org/wiki/Mono_%28software%29)
|
||||
|
||||

|
||||
|
||||
|
|
@ -34,21 +26,17 @@ This image will run stand-alone Mono console apps.
|
|||
|
||||
This example Dockerfile will run an executable called `TestingConsoleApp.exe`.
|
||||
|
||||
FROM mono:3.10-onbuild
|
||||
CMD [ "mono", "./TestingConsoleApp.exe" ]
|
||||
FROM mono:3.10-onbuild
|
||||
CMD [ "mono", "./TestingConsoleApp.exe" ]
|
||||
|
||||
Place this file in the root of your app, next to the `.sln` solution file.
|
||||
Modify the exectuable name to match what you want to run.
|
||||
Place this file in the root of your app, next to the `.sln` solution file. Modify the exectuable name to match what you want to run.
|
||||
|
||||
This image includes `ONBUILD` triggers that adds your app source code to
|
||||
`/usr/src/app/source`, restores NuGet packages and compiles the app, placing the
|
||||
output in `/usr/src/app/build`.
|
||||
This image includes `ONBUILD` triggers that adds your app source code to `/usr/src/app/source`, restores NuGet packages and compiles the app, placing the output in `/usr/src/app/build`.
|
||||
|
||||
With the Dockerfile in place, you can build and run a Docker image with your
|
||||
app:
|
||||
With the Dockerfile in place, you can build and run a Docker image with your app:
|
||||
|
||||
docker build -t my-app .
|
||||
docker run my-app
|
||||
docker build -t my-app .
|
||||
docker run my-app
|
||||
|
||||
You should see any output from your app now.
|
||||
|
||||
|
|
@ -60,9 +48,7 @@ Thanks to [Michael Friis](http://friism.com/) for his preliminary work.
|
|||
|
||||
# License
|
||||
|
||||
This Docker Image is licensed with the Expat License. See the [Mono Project
|
||||
licensing FAQ](http://www.mono-project.com/docs/faq/licensing/) for details on
|
||||
how Mono and associated libraries are licensed.
|
||||
This Docker Image is licensed with the Expat License. See the [Mono Project licensing FAQ](http://www.mono-project.com/docs/faq/licensing/) for details on how Mono and associated libraries are licensed.
|
||||
|
||||
# Supported Docker versions
|
||||
|
||||
|
|
|
|||
|
|
@ -1,13 +1,9 @@
|
|||
# What is Mono
|
||||
|
||||
Sponsored by Xamarin, Mono is an open source implementation of Microsoft's .NET
|
||||
Framework based on the ECMA standards for C# and the Common Language Runtime. A
|
||||
growing family of solutions and an active and enthusiastic contributing
|
||||
community is helping position Mono to become the leading choice for development
|
||||
of cross platform applications.
|
||||
Sponsored by Xamarin, Mono is an open source implementation of Microsoft's .NET Framework based on the ECMA standards for C# and the Common Language Runtime. A growing family of solutions and an active and enthusiastic contributing community is helping position Mono to become the leading choice for development of cross platform applications.
|
||||
|
||||
* [Mono Project homepage](http://www.mono-project.com/)
|
||||
* [http://en.wikipedia.org/wiki/Mono_(software)](http://en.wikipedia.org/wiki/Mono_(software))
|
||||
- [Mono Project homepage](http://www.mono-project.com/)
|
||||
- [http://en.wikipedia.org/wiki/Mono_(software)](http://en.wikipedia.org/wiki/Mono_%28software%29)
|
||||
|
||||
%%LOGO%%
|
||||
|
||||
|
|
@ -19,21 +15,17 @@ This image will run stand-alone Mono console apps.
|
|||
|
||||
This example Dockerfile will run an executable called `TestingConsoleApp.exe`.
|
||||
|
||||
FROM mono:3.10-onbuild
|
||||
CMD [ "mono", "./TestingConsoleApp.exe" ]
|
||||
FROM mono:3.10-onbuild
|
||||
CMD [ "mono", "./TestingConsoleApp.exe" ]
|
||||
|
||||
Place this file in the root of your app, next to the `.sln` solution file.
|
||||
Modify the exectuable name to match what you want to run.
|
||||
Place this file in the root of your app, next to the `.sln` solution file. Modify the exectuable name to match what you want to run.
|
||||
|
||||
This image includes `ONBUILD` triggers that adds your app source code to
|
||||
`/usr/src/app/source`, restores NuGet packages and compiles the app, placing the
|
||||
output in `/usr/src/app/build`.
|
||||
This image includes `ONBUILD` triggers that adds your app source code to `/usr/src/app/source`, restores NuGet packages and compiles the app, placing the output in `/usr/src/app/build`.
|
||||
|
||||
With the Dockerfile in place, you can build and run a Docker image with your
|
||||
app:
|
||||
With the Dockerfile in place, you can build and run a Docker image with your app:
|
||||
|
||||
docker build -t my-app .
|
||||
docker run my-app
|
||||
docker build -t my-app .
|
||||
docker run my-app
|
||||
|
||||
You should see any output from your app now.
|
||||
|
||||
|
|
|
|||
|
|
@ -1,3 +1 @@
|
|||
This Docker Image is licensed with the Expat License. See the [Mono Project
|
||||
licensing FAQ](http://www.mono-project.com/docs/faq/licensing/) for details on
|
||||
how Mono and associated libraries are licensed.
|
||||
This Docker Image is licensed with the Expat License. See the [Mono Project licensing FAQ](http://www.mono-project.com/docs/faq/licensing/) for details on how Mono and associated libraries are licensed.
|
||||
|
|
|
|||
|
|
@ -1,27 +1,16 @@
|
|||
# Supported tags and respective `Dockerfile` links
|
||||
|
||||
- [`5.5.42`, `5.5` (*5.5/Dockerfile*)](https://github.com/docker-library/mysql/blob/8ed790ab199eeef0f36ef0547ae28e5654cbef0d/5.5/Dockerfile)
|
||||
- [`5.6.23`, `5.6`, `5`, `latest` (*5.6/Dockerfile*)](https://github.com/docker-library/mysql/blob/8ed790ab199eeef0f36ef0547ae28e5654cbef0d/5.6/Dockerfile)
|
||||
- [`5.7.5-m15`, `5.7.5`, `5.7` (*5.7/Dockerfile*)](https://github.com/docker-library/mysql/blob/66f8feb4296894143ced202dd0042bc361096747/5.7/Dockerfile)
|
||||
- [`5.5.42`, `5.5` (*5.5/Dockerfile*)](https://github.com/docker-library/mysql/blob/8ed790ab199eeef0f36ef0547ae28e5654cbef0d/5.5/Dockerfile)
|
||||
- [`5.6.23`, `5.6`, `5`, `latest` (*5.6/Dockerfile*)](https://github.com/docker-library/mysql/blob/8ed790ab199eeef0f36ef0547ae28e5654cbef0d/5.6/Dockerfile)
|
||||
- [`5.7.5-m15`, `5.7.5`, `5.7` (*5.7/Dockerfile*)](https://github.com/docker-library/mysql/blob/66f8feb4296894143ced202dd0042bc361096747/5.7/Dockerfile)
|
||||
|
||||
For more information about this image and its history, please see the [relevant
|
||||
manifest file
|
||||
(`library/mysql`)](https://github.com/docker-library/official-images/blob/master/library/mysql)
|
||||
in the [`docker-library/official-images` GitHub
|
||||
repo](https://github.com/docker-library/official-images).
|
||||
For more information about this image and its history, please see the [relevant manifest file (`library/mysql`)](https://github.com/docker-library/official-images/blob/master/library/mysql) in the [`docker-library/official-images` GitHub repo](https://github.com/docker-library/official-images).
|
||||
|
||||
# What is MySQL?
|
||||
|
||||
MySQL is (as of March 2014) the world's second most widely used open-source
|
||||
relational database management system (RDBMS). It is named after co-founder
|
||||
Michael Widenius's daughter, My. The SQL phrase stands for Structured Query
|
||||
Language.
|
||||
MySQL is (as of March 2014) the world's second most widely used open-source relational database management system (RDBMS). It is named after co-founder Michael Widenius's daughter, My. The SQL phrase stands for Structured Query Language.
|
||||
|
||||
MySQL is a popular choice of database for use in web applications, and is a
|
||||
central component of the widely used LAMP open source web application software
|
||||
stack (and other 'AMP' stacks). LAMP is an acronym for "Linux, Apache, MySQL,
|
||||
Perl/PHP/Python." Free-software-open source projects that require a
|
||||
full-featured database management system often use MySQL.
|
||||
MySQL is a popular choice of database for use in web applications, and is a central component of the widely used LAMP open source web application software stack (and other 'AMP' stacks). LAMP is an acronym for "Linux, Apache, MySQL, Perl/PHP/Python." Free-software-open source projects that require a full-featured database management system often use MySQL.
|
||||
|
||||
Oracle Corporation and/or affiliates own the copyright and trademark for MySQL.
|
||||
|
||||
|
|
@ -33,59 +22,37 @@ Oracle Corporation and/or affiliates own the copyright and trademark for MySQL.
|
|||
|
||||
## start a mysql instance
|
||||
|
||||
docker run --name some-mysql -e MYSQL_ROOT_PASSWORD=mysecretpassword -d mysql
|
||||
docker run --name some-mysql -e MYSQL_ROOT_PASSWORD=mysecretpassword -d mysql
|
||||
|
||||
This image includes `EXPOSE 3306` (the mysql port), so standard container
|
||||
linking will make it automatically available to the linked containers (as the
|
||||
following examples illustrate).
|
||||
This image includes `EXPOSE 3306` (the mysql port), so standard container linking will make it automatically available to the linked containers (as the following examples illustrate).
|
||||
|
||||
## connect to it from an application
|
||||
|
||||
docker run --name some-app --link some-mysql:mysql -d application-that-uses-mysql
|
||||
docker run --name some-app --link some-mysql:mysql -d application-that-uses-mysql
|
||||
|
||||
## ... or via `mysql`
|
||||
|
||||
docker run -it --link some-mysql:mysql --rm mysql sh -c 'exec mysql -h"$MYSQL_PORT_3306_TCP_ADDR" -P"$MYSQL_PORT_3306_TCP_PORT" -uroot -p"$MYSQL_ENV_MYSQL_ROOT_PASSWORD"'
|
||||
docker run -it --link some-mysql:mysql --rm mysql sh -c 'exec mysql -h"$MYSQL_PORT_3306_TCP_ADDR" -P"$MYSQL_PORT_3306_TCP_PORT" -uroot -p"$MYSQL_ENV_MYSQL_ROOT_PASSWORD"'
|
||||
|
||||
## Environment Variables
|
||||
|
||||
The MySQL image uses several environment variables which are easy to miss. While
|
||||
not all the variables are required, they may significantly aid you in using the
|
||||
image.
|
||||
The MySQL image uses several environment variables which are easy to miss. While not all the variables are required, they may significantly aid you in using the image.
|
||||
|
||||
### `MYSQL_ROOT_PASSWORD`
|
||||
|
||||
This is the one environment variable that is required for you to use the MySQL
|
||||
image. This environment variable should be what you want to set the root
|
||||
password for MySQL to. In the above example, it is being set to
|
||||
"mysecretpassword".
|
||||
This is the one environment variable that is required for you to use the MySQL image. This environment variable should be what you want to set the root password for MySQL to. In the above example, it is being set to "mysecretpassword".
|
||||
|
||||
### `MYSQL_USER`, `MYSQL_PASSWORD`
|
||||
|
||||
These optional environment variables are used in conjunction to set both a MySQL
|
||||
user and password, which will subsequently be granted all permissions for the
|
||||
database specified by the optional `MYSQL_DATABASE` variable. Note that if you
|
||||
only have one of these two environment variables, then neither will actually do
|
||||
anything - these two are meant to be used in conjunction with one another. When
|
||||
these variables are used, it will create a new user with the given password in
|
||||
the MySQL database - there is no need to specify `MYSQL_USER` with `root`, as
|
||||
the `root` user already exists in the default MySQL and the password is
|
||||
controlled by `MYSQL_ROOT_PASSWORD`.
|
||||
These optional environment variables are used in conjunction to set both a MySQL user and password, which will subsequently be granted all permissions for the database specified by the optional `MYSQL_DATABASE` variable. Note that if you only have one of these two environment variables, then neither will actually do anything - these two are meant to be used in conjunction with one another. When these variables are used, it will create a new user with the given password in the MySQL database - there is no need to specify `MYSQL_USER` with `root`, as the `root` user already exists in the default MySQL and the password is controlled by `MYSQL_ROOT_PASSWORD`.
|
||||
|
||||
### `MYSQL_DATABASE`
|
||||
|
||||
This optional environment variable denotes the name of a database to create. If
|
||||
a user/password was supplied (via the `MYSQL_USER` and `MYSQL_PASSWORD`
|
||||
environment variables) then that user account will be granted (`GRANT ALL`)
|
||||
access to this database.
|
||||
This optional environment variable denotes the name of a database to create. If a user/password was supplied (via the `MYSQL_USER` and `MYSQL_PASSWORD` environment variables) then that user account will be granted (`GRANT ALL`) access to this database.
|
||||
|
||||
# Caveats
|
||||
|
||||
If there is no database when `mysql` starts in a container, then `mysql` will
|
||||
create the default database for you. While this is the expected behavior of
|
||||
`mysql`, this means that it will not accept incoming connections during that
|
||||
time. This may cause issues when using automation tools, such as `fig`, that
|
||||
start several containers simultaneously.
|
||||
If there is no database when `mysql` starts in a container, then `mysql` will create the default database for you. While this is the expected behavior of `mysql`, this means that it will not accept incoming connections during that time. This may cause issues when using automation tools, such as `fig`, that start several containers simultaneously.
|
||||
|
||||
# Supported Docker versions
|
||||
|
||||
|
|
@ -97,20 +64,12 @@ Support for older versions (down to 1.0) is provided on a best-effort basis.
|
|||
|
||||
## Issues
|
||||
|
||||
If you have any problems with or questions about this image, please contact us
|
||||
through a [GitHub issue](https://github.com/docker-library/mysql/issues).
|
||||
If you have any problems with or questions about this image, please contact us through a [GitHub issue](https://github.com/docker-library/mysql/issues).
|
||||
|
||||
You can also reach many of the official image maintainers via the
|
||||
`#docker-library` IRC channel on [Freenode](https://freenode.net).
|
||||
You can also reach many of the official image maintainers via the `#docker-library` IRC channel on [Freenode](https://freenode.net).
|
||||
|
||||
## Contributing
|
||||
|
||||
You are invited to contribute new features, fixes, or updates, large or small;
|
||||
we are always thrilled to receive pull requests, and do our best to process them
|
||||
as fast as we can.
|
||||
You are invited to contribute new features, fixes, or updates, large or small; we are always thrilled to receive pull requests, and do our best to process them as fast as we can.
|
||||
|
||||
Before you start to code, we recommend discussing your plans
|
||||
through a [GitHub issue](https://github.com/docker-library/mysql/issues), especially for more ambitious
|
||||
contributions. This gives other contributors a chance to point you in the right
|
||||
direction, give you feedback on your design, and help you find out if someone
|
||||
else is working on the same thing.
|
||||
Before you start to code, we recommend discussing your plans through a [GitHub issue](https://github.com/docker-library/mysql/issues), especially for more ambitious contributions. This gives other contributors a chance to point you in the right direction, give you feedback on your design, and help you find out if someone else is working on the same thing.
|
||||
|
|
|
|||
|
|
@ -1,15 +1,8 @@
|
|||
# What is MySQL?
|
||||
|
||||
MySQL is (as of March 2014) the world's second most widely used open-source
|
||||
relational database management system (RDBMS). It is named after co-founder
|
||||
Michael Widenius's daughter, My. The SQL phrase stands for Structured Query
|
||||
Language.
|
||||
MySQL is (as of March 2014) the world's second most widely used open-source relational database management system (RDBMS). It is named after co-founder Michael Widenius's daughter, My. The SQL phrase stands for Structured Query Language.
|
||||
|
||||
MySQL is a popular choice of database for use in web applications, and is a
|
||||
central component of the widely used LAMP open source web application software
|
||||
stack (and other 'AMP' stacks). LAMP is an acronym for "Linux, Apache, MySQL,
|
||||
Perl/PHP/Python." Free-software-open source projects that require a
|
||||
full-featured database management system often use MySQL.
|
||||
MySQL is a popular choice of database for use in web applications, and is a central component of the widely used LAMP open source web application software stack (and other 'AMP' stacks). LAMP is an acronym for "Linux, Apache, MySQL, Perl/PHP/Python." Free-software-open source projects that require a full-featured database management system often use MySQL.
|
||||
|
||||
Oracle Corporation and/or affiliates own the copyright and trademark for MySQL.
|
||||
|
||||
|
|
@ -21,56 +14,34 @@ Oracle Corporation and/or affiliates own the copyright and trademark for MySQL.
|
|||
|
||||
## start a mysql instance
|
||||
|
||||
docker run --name some-mysql -e MYSQL_ROOT_PASSWORD=mysecretpassword -d mysql
|
||||
docker run --name some-mysql -e MYSQL_ROOT_PASSWORD=mysecretpassword -d mysql
|
||||
|
||||
This image includes `EXPOSE 3306` (the mysql port), so standard container
|
||||
linking will make it automatically available to the linked containers (as the
|
||||
following examples illustrate).
|
||||
This image includes `EXPOSE 3306` (the mysql port), so standard container linking will make it automatically available to the linked containers (as the following examples illustrate).
|
||||
|
||||
## connect to it from an application
|
||||
|
||||
docker run --name some-app --link some-mysql:mysql -d application-that-uses-mysql
|
||||
docker run --name some-app --link some-mysql:mysql -d application-that-uses-mysql
|
||||
|
||||
## ... or via `mysql`
|
||||
|
||||
docker run -it --link some-mysql:mysql --rm mysql sh -c 'exec mysql -h"$MYSQL_PORT_3306_TCP_ADDR" -P"$MYSQL_PORT_3306_TCP_PORT" -uroot -p"$MYSQL_ENV_MYSQL_ROOT_PASSWORD"'
|
||||
docker run -it --link some-mysql:mysql --rm mysql sh -c 'exec mysql -h"$MYSQL_PORT_3306_TCP_ADDR" -P"$MYSQL_PORT_3306_TCP_PORT" -uroot -p"$MYSQL_ENV_MYSQL_ROOT_PASSWORD"'
|
||||
|
||||
## Environment Variables
|
||||
|
||||
The MySQL image uses several environment variables which are easy to miss. While
|
||||
not all the variables are required, they may significantly aid you in using the
|
||||
image.
|
||||
The MySQL image uses several environment variables which are easy to miss. While not all the variables are required, they may significantly aid you in using the image.
|
||||
|
||||
### `MYSQL_ROOT_PASSWORD`
|
||||
|
||||
This is the one environment variable that is required for you to use the MySQL
|
||||
image. This environment variable should be what you want to set the root
|
||||
password for MySQL to. In the above example, it is being set to
|
||||
"mysecretpassword".
|
||||
This is the one environment variable that is required for you to use the MySQL image. This environment variable should be what you want to set the root password for MySQL to. In the above example, it is being set to "mysecretpassword".
|
||||
|
||||
### `MYSQL_USER`, `MYSQL_PASSWORD`
|
||||
|
||||
These optional environment variables are used in conjunction to set both a MySQL
|
||||
user and password, which will subsequently be granted all permissions for the
|
||||
database specified by the optional `MYSQL_DATABASE` variable. Note that if you
|
||||
only have one of these two environment variables, then neither will actually do
|
||||
anything - these two are meant to be used in conjunction with one another. When
|
||||
these variables are used, it will create a new user with the given password in
|
||||
the MySQL database - there is no need to specify `MYSQL_USER` with `root`, as
|
||||
the `root` user already exists in the default MySQL and the password is
|
||||
controlled by `MYSQL_ROOT_PASSWORD`.
|
||||
These optional environment variables are used in conjunction to set both a MySQL user and password, which will subsequently be granted all permissions for the database specified by the optional `MYSQL_DATABASE` variable. Note that if you only have one of these two environment variables, then neither will actually do anything - these two are meant to be used in conjunction with one another. When these variables are used, it will create a new user with the given password in the MySQL database - there is no need to specify `MYSQL_USER` with `root`, as the `root` user already exists in the default MySQL and the password is controlled by `MYSQL_ROOT_PASSWORD`.
|
||||
|
||||
### `MYSQL_DATABASE`
|
||||
|
||||
This optional environment variable denotes the name of a database to create. If
|
||||
a user/password was supplied (via the `MYSQL_USER` and `MYSQL_PASSWORD`
|
||||
environment variables) then that user account will be granted (`GRANT ALL`)
|
||||
access to this database.
|
||||
This optional environment variable denotes the name of a database to create. If a user/password was supplied (via the `MYSQL_USER` and `MYSQL_PASSWORD` environment variables) then that user account will be granted (`GRANT ALL`) access to this database.
|
||||
|
||||
# Caveats
|
||||
|
||||
If there is no database when `mysql` starts in a container, then `mysql` will
|
||||
create the default database for you. While this is the expected behavior of
|
||||
`mysql`, this means that it will not accept incoming connections during that
|
||||
time. This may cause issues when using automation tools, such as `fig`, that
|
||||
start several containers simultaneously.
|
||||
If there is no database when `mysql` starts in a container, then `mysql` will create the default database for you. While this is the expected behavior of `mysql`, this means that it will not accept incoming connections during that time. This may cause issues when using automation tools, such as `fig`, that start several containers simultaneously.
|
||||
|
|
|
|||
|
|
@ -1,27 +1,18 @@
|
|||
# Supported tags and respective `Dockerfile` links
|
||||
|
||||
- [`lucid`, `nd10.04` (*dockerfiles/lucid/Dockerfile*)](https://github.com/neurodebian/dockerfiles/blob/6ee7033cb630b4a72fa3a4a56ad6046405efacdf/dockerfiles/lucid/Dockerfile)
|
||||
- [`precise`, `nd12.04` (*dockerfiles/precise/Dockerfile*)](https://github.com/neurodebian/dockerfiles/blob/6ee7033cb630b4a72fa3a4a56ad6046405efacdf/dockerfiles/precise/Dockerfile)
|
||||
- [`trusty`, `nd14.04` (*dockerfiles/trusty/Dockerfile*)](https://github.com/neurodebian/dockerfiles/blob/6ee7033cb630b4a72fa3a4a56ad6046405efacdf/dockerfiles/trusty/Dockerfile)
|
||||
- [`squeeze`, `nd60` (*dockerfiles/squeeze/Dockerfile*)](https://github.com/neurodebian/dockerfiles/blob/6ee7033cb630b4a72fa3a4a56ad6046405efacdf/dockerfiles/squeeze/Dockerfile)
|
||||
- [`wheezy`, `nd70`, `latest` (*dockerfiles/wheezy/Dockerfile*)](https://github.com/neurodebian/dockerfiles/blob/6ee7033cb630b4a72fa3a4a56ad6046405efacdf/dockerfiles/wheezy/Dockerfile)
|
||||
- [`jessie`, `nd80` (*dockerfiles/jessie/Dockerfile*)](https://github.com/neurodebian/dockerfiles/blob/6ee7033cb630b4a72fa3a4a56ad6046405efacdf/dockerfiles/jessie/Dockerfile)
|
||||
- [`sid`, `nd` (*dockerfiles/sid/Dockerfile*)](https://github.com/neurodebian/dockerfiles/blob/6ee7033cb630b4a72fa3a4a56ad6046405efacdf/dockerfiles/sid/Dockerfile)
|
||||
- [`lucid`, `nd10.04` (*dockerfiles/lucid/Dockerfile*)](https://github.com/neurodebian/dockerfiles/blob/6ee7033cb630b4a72fa3a4a56ad6046405efacdf/dockerfiles/lucid/Dockerfile)
|
||||
- [`precise`, `nd12.04` (*dockerfiles/precise/Dockerfile*)](https://github.com/neurodebian/dockerfiles/blob/6ee7033cb630b4a72fa3a4a56ad6046405efacdf/dockerfiles/precise/Dockerfile)
|
||||
- [`trusty`, `nd14.04` (*dockerfiles/trusty/Dockerfile*)](https://github.com/neurodebian/dockerfiles/blob/6ee7033cb630b4a72fa3a4a56ad6046405efacdf/dockerfiles/trusty/Dockerfile)
|
||||
- [`squeeze`, `nd60` (*dockerfiles/squeeze/Dockerfile*)](https://github.com/neurodebian/dockerfiles/blob/6ee7033cb630b4a72fa3a4a56ad6046405efacdf/dockerfiles/squeeze/Dockerfile)
|
||||
- [`wheezy`, `nd70`, `latest` (*dockerfiles/wheezy/Dockerfile*)](https://github.com/neurodebian/dockerfiles/blob/6ee7033cb630b4a72fa3a4a56ad6046405efacdf/dockerfiles/wheezy/Dockerfile)
|
||||
- [`jessie`, `nd80` (*dockerfiles/jessie/Dockerfile*)](https://github.com/neurodebian/dockerfiles/blob/6ee7033cb630b4a72fa3a4a56ad6046405efacdf/dockerfiles/jessie/Dockerfile)
|
||||
- [`sid`, `nd` (*dockerfiles/sid/Dockerfile*)](https://github.com/neurodebian/dockerfiles/blob/6ee7033cb630b4a72fa3a4a56ad6046405efacdf/dockerfiles/sid/Dockerfile)
|
||||
|
||||
For more information about this image and its history, please see the [relevant
|
||||
manifest file
|
||||
(`library/neurodebian`)](https://github.com/docker-library/official-images/blob/master/library/neurodebian)
|
||||
in the [`docker-library/official-images` GitHub
|
||||
repo](https://github.com/docker-library/official-images).
|
||||
For more information about this image and its history, please see the [relevant manifest file (`library/neurodebian`)](https://github.com/docker-library/official-images/blob/master/library/neurodebian) in the [`docker-library/official-images` GitHub repo](https://github.com/docker-library/official-images).
|
||||
|
||||
# What is NeuroDebian?
|
||||
|
||||
NeuroDebian provides a large collection of popular neuroscience research
|
||||
software for the [Debian](http://www.debian.org) operating system as well as
|
||||
[Ubuntu](http://www.ubuntu.com) and other derivatives. Popular packages include
|
||||
*AFNI*, *FSL*, *PyMVPA*, and many others. While we do strive to maintain a high
|
||||
level of quality, we make no guarantee that a given package works as expected,
|
||||
so use them at your own risk.
|
||||
NeuroDebian provides a large collection of popular neuroscience research software for the [Debian](http://www.debian.org) operating system as well as [Ubuntu](http://www.ubuntu.com) and other derivatives. Popular packages include*AFNI*, *FSL*, *PyMVPA*, and many others. While we do strive to maintain a high level of quality, we make no guarantee that a given package works as expected, so use them at your own risk.
|
||||
|
||||
> [neuro.debian.net](http://neuro.debian.net/)
|
||||
|
||||
|
|
@ -29,27 +20,20 @@ so use them at your own risk.
|
|||
|
||||
# About this image
|
||||
|
||||
NeuroDebian images only add NeuroDebian repository and repository's GPG key. No
|
||||
apt indexes are downloaded, so `apt-get update` needs to be ran before any use
|
||||
of `apt-get`.
|
||||
NeuroDebian images only add NeuroDebian repository and repository's GPG key. No apt indexes are downloaded, so `apt-get update` needs to be ran before any use of `apt-get`.
|
||||
|
||||
`nd` tags are used to reflect suffixes used in versions of packages available
|
||||
from NeuroDebian.
|
||||
`nd` tags are used to reflect suffixes used in versions of packages available from NeuroDebian.
|
||||
|
||||
The `neurodebian:latest` tag will always point the Neurodebian-enabled latest
|
||||
stable release of Debian (which is, at the time of this writing,
|
||||
`debian:wheezy`).
|
||||
The `neurodebian:latest` tag will always point the Neurodebian-enabled latest stable release of Debian (which is, at the time of this writing, `debian:wheezy`).
|
||||
|
||||
## sources.list
|
||||
|
||||
NeuroDebian APT file is installed under
|
||||
`/etc/apt/sources.list.d/neurodebian.sources.list` and currently enables only
|
||||
`main` (DFSG-compliant) area of the archive:
|
||||
NeuroDebian APT file is installed under `/etc/apt/sources.list.d/neurodebian.sources.list` and currently enables only `main` (DFSG-compliant) area of the archive:
|
||||
|
||||
> docker run neurodebian:latest cat /etc/apt/sources.list.d/neurodebian.sources.list
|
||||
deb http://neuro.debian.net/debian wheezy main
|
||||
deb http://neuro.debian.net/debian data main
|
||||
#deb-src http://neuro.debian.net/debian-devel wheezy main
|
||||
> docker run neurodebian:latest cat /etc/apt/sources.list.d/neurodebian.sources.list
|
||||
deb http://neuro.debian.net/debian wheezy main
|
||||
deb http://neuro.debian.net/debian data main
|
||||
#deb-src http://neuro.debian.net/debian-devel wheezy main
|
||||
|
||||
# Supported Docker versions
|
||||
|
||||
|
|
@ -61,20 +45,12 @@ Support for older versions (down to 1.0) is provided on a best-effort basis.
|
|||
|
||||
## Issues
|
||||
|
||||
If you have any problems with or questions about this image, please contact us
|
||||
through a [GitHub issue](https://github.com/neurodebian/dockerfiles/issues).
|
||||
If you have any problems with or questions about this image, please contact us through a [GitHub issue](https://github.com/neurodebian/dockerfiles/issues).
|
||||
|
||||
You can also reach many of the official image maintainers via the
|
||||
`#docker-library` IRC channel on [Freenode](https://freenode.net).
|
||||
You can also reach many of the official image maintainers via the `#docker-library` IRC channel on [Freenode](https://freenode.net).
|
||||
|
||||
## Contributing
|
||||
|
||||
You are invited to contribute new features, fixes, or updates, large or small;
|
||||
we are always thrilled to receive pull requests, and do our best to process them
|
||||
as fast as we can.
|
||||
You are invited to contribute new features, fixes, or updates, large or small; we are always thrilled to receive pull requests, and do our best to process them as fast as we can.
|
||||
|
||||
Before you start to code, we recommend discussing your plans
|
||||
through a [GitHub issue](https://github.com/neurodebian/dockerfiles/issues), especially for more ambitious
|
||||
contributions. This gives other contributors a chance to point you in the right
|
||||
direction, give you feedback on your design, and help you find out if someone
|
||||
else is working on the same thing.
|
||||
Before you start to code, we recommend discussing your plans through a [GitHub issue](https://github.com/neurodebian/dockerfiles/issues), especially for more ambitious contributions. This gives other contributors a chance to point you in the right direction, give you feedback on your design, and help you find out if someone else is working on the same thing.
|
||||
|
|
|
|||
|
|
@ -1,11 +1,6 @@
|
|||
# What is NeuroDebian?
|
||||
|
||||
NeuroDebian provides a large collection of popular neuroscience research
|
||||
software for the [Debian](http://www.debian.org) operating system as well as
|
||||
[Ubuntu](http://www.ubuntu.com) and other derivatives. Popular packages include
|
||||
*AFNI*, *FSL*, *PyMVPA*, and many others. While we do strive to maintain a high
|
||||
level of quality, we make no guarantee that a given package works as expected,
|
||||
so use them at your own risk.
|
||||
NeuroDebian provides a large collection of popular neuroscience research software for the [Debian](http://www.debian.org) operating system as well as [Ubuntu](http://www.ubuntu.com) and other derivatives. Popular packages include*AFNI*, *FSL*, *PyMVPA*, and many others. While we do strive to maintain a high level of quality, we make no guarantee that a given package works as expected, so use them at your own risk.
|
||||
|
||||
> [neuro.debian.net](http://neuro.debian.net/)
|
||||
|
||||
|
|
@ -13,24 +8,17 @@ so use them at your own risk.
|
|||
|
||||
# About this image
|
||||
|
||||
NeuroDebian images only add NeuroDebian repository and repository's GPG key. No
|
||||
apt indexes are downloaded, so `apt-get update` needs to be ran before any use
|
||||
of `apt-get`.
|
||||
NeuroDebian images only add NeuroDebian repository and repository's GPG key. No apt indexes are downloaded, so `apt-get update` needs to be ran before any use of `apt-get`.
|
||||
|
||||
`nd` tags are used to reflect suffixes used in versions of packages available
|
||||
from NeuroDebian.
|
||||
`nd` tags are used to reflect suffixes used in versions of packages available from NeuroDebian.
|
||||
|
||||
The `neurodebian:latest` tag will always point the Neurodebian-enabled latest
|
||||
stable release of Debian (which is, at the time of this writing,
|
||||
`debian:wheezy`).
|
||||
The `neurodebian:latest` tag will always point the Neurodebian-enabled latest stable release of Debian (which is, at the time of this writing, `debian:wheezy`).
|
||||
|
||||
## sources.list
|
||||
|
||||
NeuroDebian APT file is installed under
|
||||
`/etc/apt/sources.list.d/neurodebian.sources.list` and currently enables only
|
||||
`main` (DFSG-compliant) area of the archive:
|
||||
NeuroDebian APT file is installed under `/etc/apt/sources.list.d/neurodebian.sources.list` and currently enables only `main` (DFSG-compliant) area of the archive:
|
||||
|
||||
> docker run neurodebian:latest cat /etc/apt/sources.list.d/neurodebian.sources.list
|
||||
deb http://neuro.debian.net/debian wheezy main
|
||||
deb http://neuro.debian.net/debian data main
|
||||
#deb-src http://neuro.debian.net/debian-devel wheezy main
|
||||
> docker run neurodebian:latest cat /etc/apt/sources.list.d/neurodebian.sources.list
|
||||
deb http://neuro.debian.net/debian wheezy main
|
||||
deb http://neuro.debian.net/debian data main
|
||||
#deb-src http://neuro.debian.net/debian-devel wheezy main
|
||||
|
|
|
|||
|
|
@ -1,22 +1,12 @@
|
|||
# Supported tags and respective `Dockerfile` links
|
||||
|
||||
- [`latest`, `1`, `1.7`, `1.7.9` (*Dockerfile*)](https://github.com/nginxinc/docker-nginx/blob/57da11369acbec3256b0c2704a50282eeabb684f/Dockerfile)
|
||||
- [`latest`, `1`, `1.7`, `1.7.9` (*Dockerfile*)](https://github.com/nginxinc/docker-nginx/blob/57da11369acbec3256b0c2704a50282eeabb684f/Dockerfile)
|
||||
|
||||
For more information about this image and its history, please see the [relevant
|
||||
manifest file
|
||||
(`library/nginx`)](https://github.com/docker-library/official-images/blob/master/library/nginx)
|
||||
in the [`docker-library/official-images` GitHub
|
||||
repo](https://github.com/docker-library/official-images).
|
||||
For more information about this image and its history, please see the [relevant manifest file (`library/nginx`)](https://github.com/docker-library/official-images/blob/master/library/nginx) in the [`docker-library/official-images` GitHub repo](https://github.com/docker-library/official-images).
|
||||
|
||||
# What is Nginx?
|
||||
|
||||
Nginx (pronounced "engine-x") is an open source reverse proxy server for HTTP,
|
||||
HTTPS, SMTP, POP3, and IMAP protocols, as well as a load balancer, HTTP cache,
|
||||
and a web server (origin server). The nginx project started with a strong focus
|
||||
on high concurrency, high performance and low memory usage. It is licensed under
|
||||
the 2-clause BSD-like license and it runs on Linux, BSD variants, Mac OS X,
|
||||
Solaris, AIX, HP-UX, as well as on other *nix flavors. It also has a proof of
|
||||
concept port for Microsoft Window..
|
||||
Nginx (pronounced "engine-x") is an open source reverse proxy server for HTTP, HTTPS, SMTP, POP3, and IMAP protocols, as well as a load balancer, HTTP cache, and a web server (origin server). The nginx project started with a strong focus on high concurrency, high performance and low memory usage. It is licensed under the 2-clause BSD-like license and it runs on Linux, BSD variants, Mac OS X, Solaris, AIX, HP-UX, as well as on other *nix flavors. It also has a proof of concept port for Microsoft Window..
|
||||
|
||||
> [wikipedia.org/wiki/Nginx](https://en.wikipedia.org/wiki/Nginx)
|
||||
|
||||
|
|
@ -26,54 +16,43 @@ concept port for Microsoft Window..
|
|||
|
||||
## hosting some simple static content
|
||||
|
||||
docker run --name some-nginx -v /some/content:/usr/share/nginx/html:ro -d nginx
|
||||
docker run --name some-nginx -v /some/content:/usr/share/nginx/html:ro -d nginx
|
||||
|
||||
Alternatively, a simple `Dockerfile` can be used to generate a new image that
|
||||
includes the necessary content (which is a much cleaner solution than the bind
|
||||
mount above):
|
||||
Alternatively, a simple `Dockerfile` can be used to generate a new image that includes the necessary content (which is a much cleaner solution than the bind mount above):
|
||||
|
||||
FROM nginx
|
||||
COPY static-html-directory /usr/share/nginx/html
|
||||
FROM nginx
|
||||
COPY static-html-directory /usr/share/nginx/html
|
||||
|
||||
Place this file in the same directory as your directory of content
|
||||
("static-html-directory"), run `docker build -t some-content-nginx .`, then
|
||||
start your container:
|
||||
Place this file in the same directory as your directory of content ("static-html-directory"), run `docker build -t some-content-nginx .`, then start your container:
|
||||
|
||||
docker run --name some-nginx -d some-content-nginx
|
||||
docker run --name some-nginx -d some-content-nginx
|
||||
|
||||
## exposing the port
|
||||
|
||||
docker run --name some-nginx -d -p 8080:80 some-content-nginx
|
||||
docker run --name some-nginx -d -p 8080:80 some-content-nginx
|
||||
|
||||
Then you can hit `http://localhost:8080` or `http://host-ip:8080` in your
|
||||
browser.
|
||||
Then you can hit `http://localhost:8080` or `http://host-ip:8080` in your browser.
|
||||
|
||||
## complex configuration
|
||||
|
||||
docker run --name some-nginx -v /some/nginx.conf:/etc/nginx/nginx.conf:ro -d nginx
|
||||
docker run --name some-nginx -v /some/nginx.conf:/etc/nginx/nginx.conf:ro -d nginx
|
||||
|
||||
For information on the syntax of the Nginx configuration files, see [the
|
||||
official documentation](http://nginx.org/en/docs/) (specifically the [Beginner's
|
||||
Guide](http://nginx.org/en/docs/beginners_guide.html#conf_structure)).
|
||||
For information on the syntax of the Nginx configuration files, see [the official documentation](http://nginx.org/en/docs/) (specifically the [Beginner's Guide](http://nginx.org/en/docs/beginners_guide.html#conf_structure)).
|
||||
|
||||
Be sure to include `daemon off;` in your custom configuration to ensure that
|
||||
Nginx stays in the foreground so that Docker can track the process properly
|
||||
(otherwise your container will stop immediately after starting)!
|
||||
Be sure to include `daemon off;` in your custom configuration to ensure that Nginx stays in the foreground so that Docker can track the process properly (otherwise your container will stop immediately after starting)!
|
||||
|
||||
If you wish to adapt the default configuration, use something like the following
|
||||
to copy it from a running Nginx container:
|
||||
If you wish to adapt the default configuration, use something like the following to copy it from a running Nginx container:
|
||||
|
||||
docker cp some-nginx:/etc/nginx/nginx.conf /some/nginx.conf
|
||||
docker cp some-nginx:/etc/nginx/nginx.conf /some/nginx.conf
|
||||
|
||||
As above, this can also be accomplished more cleanly using a simple
|
||||
`Dockerfile`:
|
||||
As above, this can also be accomplished more cleanly using a simple `Dockerfile`:
|
||||
|
||||
FROM nginx
|
||||
COPY nginx.conf /etc/nginx/nginx.conf
|
||||
FROM nginx
|
||||
COPY nginx.conf /etc/nginx/nginx.conf
|
||||
|
||||
Then, build with `docker build -t some-custom-nginx .` and run:
|
||||
|
||||
docker run --name some-nginx -d some-custom-nginx
|
||||
docker run --name some-nginx -d some-custom-nginx
|
||||
|
||||
# Supported Docker versions
|
||||
|
||||
|
|
@ -85,20 +64,12 @@ Support for older versions (down to 1.0) is provided on a best-effort basis.
|
|||
|
||||
## Issues
|
||||
|
||||
If you have any problems with or questions about this image, please contact us
|
||||
through a [GitHub issue](https://github.com/nginxinc/docker-nginx/issues).
|
||||
If you have any problems with or questions about this image, please contact us through a [GitHub issue](https://github.com/nginxinc/docker-nginx/issues).
|
||||
|
||||
You can also reach many of the official image maintainers via the
|
||||
`#docker-library` IRC channel on [Freenode](https://freenode.net).
|
||||
You can also reach many of the official image maintainers via the `#docker-library` IRC channel on [Freenode](https://freenode.net).
|
||||
|
||||
## Contributing
|
||||
|
||||
You are invited to contribute new features, fixes, or updates, large or small;
|
||||
we are always thrilled to receive pull requests, and do our best to process them
|
||||
as fast as we can.
|
||||
You are invited to contribute new features, fixes, or updates, large or small; we are always thrilled to receive pull requests, and do our best to process them as fast as we can.
|
||||
|
||||
Before you start to code, we recommend discussing your plans
|
||||
through a [GitHub issue](https://github.com/nginxinc/docker-nginx/issues), especially for more ambitious
|
||||
contributions. This gives other contributors a chance to point you in the right
|
||||
direction, give you feedback on your design, and help you find out if someone
|
||||
else is working on the same thing.
|
||||
Before you start to code, we recommend discussing your plans through a [GitHub issue](https://github.com/nginxinc/docker-nginx/issues), especially for more ambitious contributions. This gives other contributors a chance to point you in the right direction, give you feedback on your design, and help you find out if someone else is working on the same thing.
|
||||
|
|
|
|||
|
|
@ -1,12 +1,6 @@
|
|||
# What is Nginx?
|
||||
|
||||
Nginx (pronounced "engine-x") is an open source reverse proxy server for HTTP,
|
||||
HTTPS, SMTP, POP3, and IMAP protocols, as well as a load balancer, HTTP cache,
|
||||
and a web server (origin server). The nginx project started with a strong focus
|
||||
on high concurrency, high performance and low memory usage. It is licensed under
|
||||
the 2-clause BSD-like license and it runs on Linux, BSD variants, Mac OS X,
|
||||
Solaris, AIX, HP-UX, as well as on other *nix flavors. It also has a proof of
|
||||
concept port for Microsoft Window..
|
||||
Nginx (pronounced "engine-x") is an open source reverse proxy server for HTTP, HTTPS, SMTP, POP3, and IMAP protocols, as well as a load balancer, HTTP cache, and a web server (origin server). The nginx project started with a strong focus on high concurrency, high performance and low memory usage. It is licensed under the 2-clause BSD-like license and it runs on Linux, BSD variants, Mac OS X, Solaris, AIX, HP-UX, as well as on other *nix flavors. It also has a proof of concept port for Microsoft Window..
|
||||
|
||||
> [wikipedia.org/wiki/Nginx](https://en.wikipedia.org/wiki/Nginx)
|
||||
|
||||
|
|
@ -16,51 +10,40 @@ concept port for Microsoft Window..
|
|||
|
||||
## hosting some simple static content
|
||||
|
||||
docker run --name some-nginx -v /some/content:/usr/share/nginx/html:ro -d nginx
|
||||
docker run --name some-nginx -v /some/content:/usr/share/nginx/html:ro -d nginx
|
||||
|
||||
Alternatively, a simple `Dockerfile` can be used to generate a new image that
|
||||
includes the necessary content (which is a much cleaner solution than the bind
|
||||
mount above):
|
||||
Alternatively, a simple `Dockerfile` can be used to generate a new image that includes the necessary content (which is a much cleaner solution than the bind mount above):
|
||||
|
||||
FROM nginx
|
||||
COPY static-html-directory /usr/share/nginx/html
|
||||
FROM nginx
|
||||
COPY static-html-directory /usr/share/nginx/html
|
||||
|
||||
Place this file in the same directory as your directory of content
|
||||
("static-html-directory"), run `docker build -t some-content-nginx .`, then
|
||||
start your container:
|
||||
Place this file in the same directory as your directory of content ("static-html-directory"), run `docker build -t some-content-nginx .`, then start your container:
|
||||
|
||||
docker run --name some-nginx -d some-content-nginx
|
||||
docker run --name some-nginx -d some-content-nginx
|
||||
|
||||
## exposing the port
|
||||
|
||||
docker run --name some-nginx -d -p 8080:80 some-content-nginx
|
||||
docker run --name some-nginx -d -p 8080:80 some-content-nginx
|
||||
|
||||
Then you can hit `http://localhost:8080` or `http://host-ip:8080` in your
|
||||
browser.
|
||||
Then you can hit `http://localhost:8080` or `http://host-ip:8080` in your browser.
|
||||
|
||||
## complex configuration
|
||||
|
||||
docker run --name some-nginx -v /some/nginx.conf:/etc/nginx/nginx.conf:ro -d nginx
|
||||
docker run --name some-nginx -v /some/nginx.conf:/etc/nginx/nginx.conf:ro -d nginx
|
||||
|
||||
For information on the syntax of the Nginx configuration files, see [the
|
||||
official documentation](http://nginx.org/en/docs/) (specifically the [Beginner's
|
||||
Guide](http://nginx.org/en/docs/beginners_guide.html#conf_structure)).
|
||||
For information on the syntax of the Nginx configuration files, see [the official documentation](http://nginx.org/en/docs/) (specifically the [Beginner's Guide](http://nginx.org/en/docs/beginners_guide.html#conf_structure)).
|
||||
|
||||
Be sure to include `daemon off;` in your custom configuration to ensure that
|
||||
Nginx stays in the foreground so that Docker can track the process properly
|
||||
(otherwise your container will stop immediately after starting)!
|
||||
Be sure to include `daemon off;` in your custom configuration to ensure that Nginx stays in the foreground so that Docker can track the process properly (otherwise your container will stop immediately after starting)!
|
||||
|
||||
If you wish to adapt the default configuration, use something like the following
|
||||
to copy it from a running Nginx container:
|
||||
If you wish to adapt the default configuration, use something like the following to copy it from a running Nginx container:
|
||||
|
||||
docker cp some-nginx:/etc/nginx/nginx.conf /some/nginx.conf
|
||||
docker cp some-nginx:/etc/nginx/nginx.conf /some/nginx.conf
|
||||
|
||||
As above, this can also be accomplished more cleanly using a simple
|
||||
`Dockerfile`:
|
||||
As above, this can also be accomplished more cleanly using a simple `Dockerfile`:
|
||||
|
||||
FROM nginx
|
||||
COPY nginx.conf /etc/nginx/nginx.conf
|
||||
FROM nginx
|
||||
COPY nginx.conf /etc/nginx/nginx.conf
|
||||
|
||||
Then, build with `docker build -t some-custom-nginx .` and run:
|
||||
|
||||
docker run --name some-nginx -d some-custom-nginx
|
||||
docker run --name some-nginx -d some-custom-nginx
|
||||
|
|
|
|||
|
|
@ -1,41 +1,27 @@
|
|||
# Supported tags and respective `Dockerfile` links
|
||||
|
||||
- [`0.10.36`, `0.10` (*0.10/Dockerfile*)](https://github.com/joyent/docker-node/blob/3bb9c7ba9eb2360a031717b146747eea781abfab/0.10/Dockerfile)
|
||||
- [`0.10.36-onbuild`, `0.10-onbuild` (*0.10/onbuild/Dockerfile*)](https://github.com/joyent/docker-node/blob/d23f190e500e91ecc636878a079ff971b29eab3e/0.10/onbuild/Dockerfile)
|
||||
- [`0.10.36-slim`, `0.10-slim` (*0.10/slim/Dockerfile*)](https://github.com/joyent/docker-node/blob/a1aefc91ac380239998a9f8521bf233ee524d8d0/0.10/slim/Dockerfile)
|
||||
- [`0.10.36-wheezy`, `0.10-wheezy` (*0.10/wheezy/Dockerfile*)](https://github.com/joyent/docker-node/blob/3bb9c7ba9eb2360a031717b146747eea781abfab/0.10/wheezy/Dockerfile)
|
||||
- [`0.12.0`, `0.12`, `0`, `latest` (*0.12/Dockerfile*)](https://github.com/joyent/docker-node/blob/3bb9c7ba9eb2360a031717b146747eea781abfab/0.12/Dockerfile)
|
||||
- [`0.12.0-onbuild`, `0.12-onbuild`, `0-onbuild`, `onbuild` (*0.12/onbuild/Dockerfile*)](https://github.com/joyent/docker-node/blob/391620efd66f847d34054e495186a5af3234f044/0.12/onbuild/Dockerfile)
|
||||
- [`0.12.0-slim`, `0.12-slim`, `0-slim`, `slim` (*0.12/slim/Dockerfile*)](https://github.com/joyent/docker-node/blob/c04479fd0117c59d31e426a500ad4f5dd2399f19/0.12/slim/Dockerfile)
|
||||
- [`0.12.0-wheezy`, `0.12-wheezy`, `0-wheezy`, `wheezy` (*0.12/wheezy/Dockerfile*)](https://github.com/joyent/docker-node/blob/3bb9c7ba9eb2360a031717b146747eea781abfab/0.12/wheezy/Dockerfile)
|
||||
- [`0.8.28`, `0.8` (*0.8/Dockerfile*)](https://github.com/joyent/docker-node/blob/3bb9c7ba9eb2360a031717b146747eea781abfab/0.8/Dockerfile)
|
||||
- [`0.8.28-onbuild`, `0.8-onbuild` (*0.8/onbuild/Dockerfile*)](https://github.com/joyent/docker-node/blob/0c2ff5172aabc30ce38303d9bb340ae3e94f3a91/0.8/onbuild/Dockerfile)
|
||||
- [`0.8.28-slim`, `0.8-slim` (*0.8/slim/Dockerfile*)](https://github.com/joyent/docker-node/blob/a1aefc91ac380239998a9f8521bf233ee524d8d0/0.8/slim/Dockerfile)
|
||||
- [`0.8.28-wheezy`, `0.8-wheezy` (*0.8/wheezy/Dockerfile*)](https://github.com/joyent/docker-node/blob/3bb9c7ba9eb2360a031717b146747eea781abfab/0.8/wheezy/Dockerfile)
|
||||
- [`0.10.36`, `0.10` (*0.10/Dockerfile*)](https://github.com/joyent/docker-node/blob/3bb9c7ba9eb2360a031717b146747eea781abfab/0.10/Dockerfile)
|
||||
- [`0.10.36-onbuild`, `0.10-onbuild` (*0.10/onbuild/Dockerfile*)](https://github.com/joyent/docker-node/blob/d23f190e500e91ecc636878a079ff971b29eab3e/0.10/onbuild/Dockerfile)
|
||||
- [`0.10.36-slim`, `0.10-slim` (*0.10/slim/Dockerfile*)](https://github.com/joyent/docker-node/blob/a1aefc91ac380239998a9f8521bf233ee524d8d0/0.10/slim/Dockerfile)
|
||||
- [`0.10.36-wheezy`, `0.10-wheezy` (*0.10/wheezy/Dockerfile*)](https://github.com/joyent/docker-node/blob/3bb9c7ba9eb2360a031717b146747eea781abfab/0.10/wheezy/Dockerfile)
|
||||
- [`0.12.0`, `0.12`, `0`, `latest` (*0.12/Dockerfile*)](https://github.com/joyent/docker-node/blob/3bb9c7ba9eb2360a031717b146747eea781abfab/0.12/Dockerfile)
|
||||
- [`0.12.0-onbuild`, `0.12-onbuild`, `0-onbuild`, `onbuild` (*0.12/onbuild/Dockerfile*)](https://github.com/joyent/docker-node/blob/391620efd66f847d34054e495186a5af3234f044/0.12/onbuild/Dockerfile)
|
||||
- [`0.12.0-slim`, `0.12-slim`, `0-slim`, `slim` (*0.12/slim/Dockerfile*)](https://github.com/joyent/docker-node/blob/c04479fd0117c59d31e426a500ad4f5dd2399f19/0.12/slim/Dockerfile)
|
||||
- [`0.12.0-wheezy`, `0.12-wheezy`, `0-wheezy`, `wheezy` (*0.12/wheezy/Dockerfile*)](https://github.com/joyent/docker-node/blob/3bb9c7ba9eb2360a031717b146747eea781abfab/0.12/wheezy/Dockerfile)
|
||||
- [`0.8.28`, `0.8` (*0.8/Dockerfile*)](https://github.com/joyent/docker-node/blob/3bb9c7ba9eb2360a031717b146747eea781abfab/0.8/Dockerfile)
|
||||
- [`0.8.28-onbuild`, `0.8-onbuild` (*0.8/onbuild/Dockerfile*)](https://github.com/joyent/docker-node/blob/0c2ff5172aabc30ce38303d9bb340ae3e94f3a91/0.8/onbuild/Dockerfile)
|
||||
- [`0.8.28-slim`, `0.8-slim` (*0.8/slim/Dockerfile*)](https://github.com/joyent/docker-node/blob/a1aefc91ac380239998a9f8521bf233ee524d8d0/0.8/slim/Dockerfile)
|
||||
- [`0.8.28-wheezy`, `0.8-wheezy` (*0.8/wheezy/Dockerfile*)](https://github.com/joyent/docker-node/blob/3bb9c7ba9eb2360a031717b146747eea781abfab/0.8/wheezy/Dockerfile)
|
||||
|
||||
For more information about this image and its history, please see the [relevant
|
||||
manifest file
|
||||
(`library/node`)](https://github.com/docker-library/official-images/blob/master/library/node)
|
||||
in the [`docker-library/official-images` GitHub
|
||||
repo](https://github.com/docker-library/official-images).
|
||||
For more information about this image and its history, please see the [relevant manifest file (`library/node`)](https://github.com/docker-library/official-images/blob/master/library/node) in the [`docker-library/official-images` GitHub repo](https://github.com/docker-library/official-images).
|
||||
|
||||
# What is Node.js?
|
||||
|
||||
Node.js is a software platform for scalable server-side and networking
|
||||
applications. Node.js applications are written in JavaScript and can be run
|
||||
within the Node.js runtime on Mac OS X, Windows, and Linux without changes.
|
||||
Node.js is a software platform for scalable server-side and networking applications. Node.js applications are written in JavaScript and can be run within the Node.js runtime on Mac OS X, Windows, and Linux without changes.
|
||||
|
||||
Node.js applications are designed to maximize throughput and efficiency, using
|
||||
non-blocking I/O and asynchronous events. Node.js applications run
|
||||
single-threaded, although Node.js uses multiple threads for file and network
|
||||
events. Node.js is commonly used for real-time applications due to its
|
||||
asynchronous nature.
|
||||
Node.js applications are designed to maximize throughput and efficiency, using non-blocking I/O and asynchronous events. Node.js applications run single-threaded, although Node.js uses multiple threads for file and network events. Node.js is commonly used for real-time applications due to its asynchronous nature.
|
||||
|
||||
Node.js internally uses the Google V8 JavaScript engine to execute code; a large
|
||||
percentage of the basic modules are written in JavaScript. Node.js contains a
|
||||
built-in, asynchronous I/O library for file, socket, and HTTP communication. The
|
||||
HTTP and socket support allows Node.js to act as a web server without additional
|
||||
software such as Apache.
|
||||
Node.js internally uses the Google V8 JavaScript engine to execute code; a large percentage of the basic modules are written in JavaScript. Node.js contains a built-in, asynchronous I/O library for file, socket, and HTTP communication. The HTTP and socket support allows Node.js to act as a web server without additional software such as Apache.
|
||||
|
||||
> [wikipedia.org/wiki/Node.js](https://en.wikipedia.org/wiki/Node.js)
|
||||
|
||||
|
|
@ -45,34 +31,28 @@ software such as Apache.
|
|||
|
||||
## Create a `Dockerfile` in your Node.js app project
|
||||
|
||||
FROM node:0.10-onbuild
|
||||
# replace this with your application's default port
|
||||
EXPOSE 8888
|
||||
FROM node:0.10-onbuild
|
||||
# replace this with your application's default port
|
||||
EXPOSE 8888
|
||||
|
||||
You can then build and run the Docker image:
|
||||
|
||||
docker build -t my-nodejs-app .
|
||||
docker run -it --rm --name my-running-app my-nodejs-app
|
||||
docker build -t my-nodejs-app .
|
||||
docker run -it --rm --name my-running-app my-nodejs-app
|
||||
|
||||
### Notes
|
||||
|
||||
The image assumes that your application has a file named
|
||||
[`package.json`](https://docs.npmjs.com/files/package.json) listing its dependencies
|
||||
and defining its [start
|
||||
script](https://docs.npmjs.com/misc/scripts#default-values).
|
||||
The image assumes that your application has a file named [`package.json`](https://docs.npmjs.com/files/package.json) listing its dependencies and defining its [start script](https://docs.npmjs.com/misc/scripts#default-values).
|
||||
|
||||
## Run a single Node.js script
|
||||
|
||||
For many simple, single file projects, you may find it inconvenient to write a
|
||||
complete `Dockerfile`. In such cases, you can run a Node.js script by using the
|
||||
Node.js Docker image directly:
|
||||
For many simple, single file projects, you may find it inconvenient to write a complete `Dockerfile`. In such cases, you can run a Node.js script by using the Node.js Docker image directly:
|
||||
|
||||
docker run -it --rm --name my-running-script -v "$PWD":/usr/src/myapp -w /usr/src/myapp node:0.10 node your-daemon-or-script.js
|
||||
docker run -it --rm --name my-running-script -v "$PWD":/usr/src/myapp -w /usr/src/myapp node:0.10 node your-daemon-or-script.js
|
||||
|
||||
# License
|
||||
|
||||
View [license information](https://github.com/joyent/node/blob/master/LICENSE)
|
||||
for the software contained in this image.
|
||||
View [license information](https://github.com/joyent/node/blob/master/LICENSE) for the software contained in this image.
|
||||
|
||||
# Supported Docker versions
|
||||
|
||||
|
|
@ -84,20 +64,12 @@ Support for older versions (down to 1.0) is provided on a best-effort basis.
|
|||
|
||||
## Issues
|
||||
|
||||
If you have any problems with or questions about this image, please contact us
|
||||
through a [GitHub issue](https://github.com/joyent/docker-node/issues).
|
||||
If you have any problems with or questions about this image, please contact us through a [GitHub issue](https://github.com/joyent/docker-node/issues).
|
||||
|
||||
You can also reach many of the official image maintainers via the
|
||||
`#docker-library` IRC channel on [Freenode](https://freenode.net).
|
||||
You can also reach many of the official image maintainers via the `#docker-library` IRC channel on [Freenode](https://freenode.net).
|
||||
|
||||
## Contributing
|
||||
|
||||
You are invited to contribute new features, fixes, or updates, large or small;
|
||||
we are always thrilled to receive pull requests, and do our best to process them
|
||||
as fast as we can.
|
||||
You are invited to contribute new features, fixes, or updates, large or small; we are always thrilled to receive pull requests, and do our best to process them as fast as we can.
|
||||
|
||||
Before you start to code, we recommend discussing your plans
|
||||
through a [GitHub issue](https://github.com/joyent/docker-node/issues), especially for more ambitious
|
||||
contributions. This gives other contributors a chance to point you in the right
|
||||
direction, give you feedback on your design, and help you find out if someone
|
||||
else is working on the same thing.
|
||||
Before you start to code, we recommend discussing your plans through a [GitHub issue](https://github.com/joyent/docker-node/issues), especially for more ambitious contributions. This gives other contributors a chance to point you in the right direction, give you feedback on your design, and help you find out if someone else is working on the same thing.
|
||||
|
|
|
|||
|
|
@ -1,20 +1,10 @@
|
|||
# What is Node.js?
|
||||
|
||||
Node.js is a software platform for scalable server-side and networking
|
||||
applications. Node.js applications are written in JavaScript and can be run
|
||||
within the Node.js runtime on Mac OS X, Windows, and Linux without changes.
|
||||
Node.js is a software platform for scalable server-side and networking applications. Node.js applications are written in JavaScript and can be run within the Node.js runtime on Mac OS X, Windows, and Linux without changes.
|
||||
|
||||
Node.js applications are designed to maximize throughput and efficiency, using
|
||||
non-blocking I/O and asynchronous events. Node.js applications run
|
||||
single-threaded, although Node.js uses multiple threads for file and network
|
||||
events. Node.js is commonly used for real-time applications due to its
|
||||
asynchronous nature.
|
||||
Node.js applications are designed to maximize throughput and efficiency, using non-blocking I/O and asynchronous events. Node.js applications run single-threaded, although Node.js uses multiple threads for file and network events. Node.js is commonly used for real-time applications due to its asynchronous nature.
|
||||
|
||||
Node.js internally uses the Google V8 JavaScript engine to execute code; a large
|
||||
percentage of the basic modules are written in JavaScript. Node.js contains a
|
||||
built-in, asynchronous I/O library for file, socket, and HTTP communication. The
|
||||
HTTP and socket support allows Node.js to act as a web server without additional
|
||||
software such as Apache.
|
||||
Node.js internally uses the Google V8 JavaScript engine to execute code; a large percentage of the basic modules are written in JavaScript. Node.js contains a built-in, asynchronous I/O library for file, socket, and HTTP communication. The HTTP and socket support allows Node.js to act as a web server without additional software such as Apache.
|
||||
|
||||
> [wikipedia.org/wiki/Node.js](https://en.wikipedia.org/wiki/Node.js)
|
||||
|
||||
|
|
@ -24,26 +14,21 @@ software such as Apache.
|
|||
|
||||
## Create a `Dockerfile` in your Node.js app project
|
||||
|
||||
FROM node:0.10-onbuild
|
||||
# replace this with your application's default port
|
||||
EXPOSE 8888
|
||||
FROM node:0.10-onbuild
|
||||
# replace this with your application's default port
|
||||
EXPOSE 8888
|
||||
|
||||
You can then build and run the Docker image:
|
||||
|
||||
docker build -t my-nodejs-app .
|
||||
docker run -it --rm --name my-running-app my-nodejs-app
|
||||
docker build -t my-nodejs-app .
|
||||
docker run -it --rm --name my-running-app my-nodejs-app
|
||||
|
||||
### Notes
|
||||
|
||||
The image assumes that your application has a file named
|
||||
[`package.json`](https://docs.npmjs.com/files/package.json) listing its dependencies
|
||||
and defining its [start
|
||||
script](https://docs.npmjs.com/misc/scripts#default-values).
|
||||
The image assumes that your application has a file named [`package.json`](https://docs.npmjs.com/files/package.json) listing its dependencies and defining its [start script](https://docs.npmjs.com/misc/scripts#default-values).
|
||||
|
||||
## Run a single Node.js script
|
||||
|
||||
For many simple, single file projects, you may find it inconvenient to write a
|
||||
complete `Dockerfile`. In such cases, you can run a Node.js script by using the
|
||||
Node.js Docker image directly:
|
||||
For many simple, single file projects, you may find it inconvenient to write a complete `Dockerfile`. In such cases, you can run a Node.js script by using the Node.js Docker image directly:
|
||||
|
||||
docker run -it --rm --name my-running-script -v "$PWD":/usr/src/myapp -w /usr/src/myapp node:0.10 node your-daemon-or-script.js
|
||||
docker run -it --rm --name my-running-script -v "$PWD":/usr/src/myapp -w /usr/src/myapp node:0.10 node your-daemon-or-script.js
|
||||
|
|
|
|||
|
|
@ -1,2 +1 @@
|
|||
View [license information](https://github.com/joyent/node/blob/master/LICENSE)
|
||||
for the software contained in this image.
|
||||
View [license information](https://github.com/joyent/node/blob/master/LICENSE) for the software contained in this image.
|
||||
|
|
|
|||
|
|
@ -1,23 +1,12 @@
|
|||
# Supported tags and respective `Dockerfile` links
|
||||
|
||||
- [`8.0`, `8`, `latest` (*8.0/Dockerfile*)](https://github.com/odoo/docker/blob/a86b7e6dbc31d19b6180fdf00e56b4a0f5fe32ff/8.0/Dockerfile)
|
||||
- [`8.0`, `8`, `latest` (*8.0/Dockerfile*)](https://github.com/odoo/docker/blob/a86b7e6dbc31d19b6180fdf00e56b4a0f5fe32ff/8.0/Dockerfile)
|
||||
|
||||
For more information about this image and its history, please see the [relevant
|
||||
manifest file
|
||||
(`library/odoo`)](https://github.com/docker-library/official-images/blob/master/library/odoo)
|
||||
in the [`docker-library/official-images` GitHub
|
||||
repo](https://github.com/docker-library/official-images).
|
||||
For more information about this image and its history, please see the [relevant manifest file (`library/odoo`)](https://github.com/docker-library/official-images/blob/master/library/odoo) in the [`docker-library/official-images` GitHub repo](https://github.com/docker-library/official-images).
|
||||
|
||||
# What is Odoo?
|
||||
|
||||
Odoo, formerly known as OpenERP, is a suite of open-source business apps
|
||||
written in Python and released under the AGPL license. This suite of
|
||||
applications covers all business needs, from Website/Ecommerce down to
|
||||
manufacturing, inventory and accounting, all seamlessly integrated. It is the
|
||||
first time ever a software editor managed to reach such a functional coverage.
|
||||
Odoo is the most installed business software in the world. Odoo is used by
|
||||
2.000.000 users worldwide ranging from very small companies (1 user) to very
|
||||
large ones (300 000 users).
|
||||
Odoo, formerly known as OpenERP, is a suite of open-source business apps written in Python and released under the AGPL license. This suite of applications covers all business needs, from Website/Ecommerce down to manufacturing, inventory and accounting, all seamlessly integrated. It is the first time ever a software editor managed to reach such a functional coverage. Odoo is the most installed business software in the world. Odoo is used by 2.000.000 users worldwide ranging from very small companies (1 user) to very large ones (300 000 users).
|
||||
|
||||
> [www.odoo.com](https://www.odoo.com)
|
||||
|
||||
|
|
@ -29,64 +18,51 @@ This image requires a running PostgreSQL server.
|
|||
|
||||
## Start a PostgreSQL server
|
||||
|
||||
docker run -d -e POSTGRES_USER=odoo -e POSTGRES_PASSWORD=odoo --name db postgres
|
||||
docker run -d -e POSTGRES_USER=odoo -e POSTGRES_PASSWORD=odoo --name db postgres
|
||||
|
||||
## Start an Odoo instance
|
||||
|
||||
docker run -p 127.0.0.1:8069:8069 --name odoo --link db:db -t odoo
|
||||
docker run -p 127.0.0.1:8069:8069 --name odoo --link db:db -t odoo
|
||||
|
||||
The alias of the container running Postgres must be db for Odoo to be able
|
||||
to connect to the Postgres server.
|
||||
The alias of the container running Postgres must be db for Odoo to be able to connect to the Postgres server.
|
||||
|
||||
## Stop and restart an Odoo instance
|
||||
|
||||
docker stop odoo
|
||||
docker start -a odoo
|
||||
docker stop odoo
|
||||
docker start -a odoo
|
||||
|
||||
## Stop and restart a PostgreSQL server
|
||||
When a PostgreSQL server is restarted, the Odoo instances
|
||||
linked to that server must be restarted as well because the server address has
|
||||
changed and the link is thus broken.
|
||||
|
||||
When a PostgreSQL server is restarted, the Odoo instances linked to that server must be restarted as well because the server address has changed and the link is thus broken.
|
||||
|
||||
Restarting a PostgreSQL server does not affect the created databases.
|
||||
|
||||
## Run Odoo with a custom configuration
|
||||
|
||||
The default configuration file for the server (located at `/etc/odoo/openerp-server.conf`)
|
||||
can be overriden at startup using volumes. Suppose you have a custom configuration
|
||||
at `/path/to/config/openerp-server.conf`, then
|
||||
The default configuration file for the server (located at `/etc/odoo/openerp-server.conf`) can be overriden at startup using volumes. Suppose you have a custom configuration at `/path/to/config/openerp-server.conf`, then
|
||||
|
||||
docker run -v /path/to/config:/etc/odoo -p 127.0.0.1:8069:8069 --name odoo --link db:db -t odoo
|
||||
docker run -v /path/to/config:/etc/odoo -p 127.0.0.1:8069:8069 --name odoo --link db:db -t odoo
|
||||
|
||||
## Run multiple Odoo instances
|
||||
|
||||
docker run -p 127.0.0.1:8070:8069 --name odoo2 --link db:db -t odoo
|
||||
docker run -p 127.0.0.1:8071:8069 --name odoo3 --link db:db -t odoo
|
||||
docker run -p 127.0.0.1:8070:8069 --name odoo2 --link db:db -t odoo
|
||||
docker run -p 127.0.0.1:8071:8069 --name odoo3 --link db:db -t odoo
|
||||
|
||||
Please note that for plain use of mails and reports functionalities, when the
|
||||
host and container ports differ (e.g. 8070 and 8069), one has to set,
|
||||
in Odoo, Settings->Parameters->System Parameters (requires technical features),
|
||||
web.base.url to the container port (e.g. 127.0.0.1:8069).
|
||||
Please note that for plain use of mails and reports functionalities, when the host and container ports differ (e.g. 8070 and 8069), one has to set, in Odoo, Settings->Parameters->System Parameters (requires technical features), web.base.url to the container port (e.g. 127.0.0.1:8069).
|
||||
|
||||
# How to upgrade this image
|
||||
Suppose you created a database from an Odoo instance named old-odoo, and you
|
||||
want to access this database from a new Odoo instance named new-odoo, e.g.
|
||||
because you've just downloaded a newer Odoo image.
|
||||
|
||||
By default, Odoo 8.0 uses a filestore (located at /var/lib/odoo/.local/share/Odoo/filestore/)
|
||||
for attachments. You should restore this filestore in your new Odoo instance by
|
||||
running
|
||||
Suppose you created a database from an Odoo instance named old-odoo, and you want to access this database from a new Odoo instance named new-odoo, e.g. because you've just downloaded a newer Odoo image.
|
||||
|
||||
docker run --volumes-from old-odoo -p 127.0.0.1:8070:8069 --name new-odoo --link db:db -t odoo
|
||||
By default, Odoo 8.0 uses a filestore (located at /var/lib/odoo/.local/share/Odoo/filestore/) for attachments. You should restore this filestore in your new Odoo instance by running
|
||||
|
||||
You can also simply prevent Odoo from using the filestore by setting the system
|
||||
parameter `ir_attachment.location` to `db-storage` in Settings->Parameters->System
|
||||
Parameters (requires technical features).
|
||||
docker run --volumes-from old-odoo -p 127.0.0.1:8070:8069 --name new-odoo --link db:db -t odoo
|
||||
|
||||
You can also simply prevent Odoo from using the filestore by setting the system parameter `ir_attachment.location` to `db-storage` in Settings->Parameters->System Parameters (requires technical features).
|
||||
|
||||
# License
|
||||
|
||||
View [license information](https://raw.githubusercontent.com/odoo/odoo/8.0/LICENSE)
|
||||
for the software contained in this image.
|
||||
View [license information](https://raw.githubusercontent.com/odoo/odoo/8.0/LICENSE) for the software contained in this image.
|
||||
|
||||
# Supported Docker versions
|
||||
|
||||
|
|
@ -98,20 +74,12 @@ Support for older versions (down to 1.0) is provided on a best-effort basis.
|
|||
|
||||
## Issues
|
||||
|
||||
If you have any problems with or questions about this image, please contact us
|
||||
through a [GitHub issue](https://github.com/odoo/docker/issues).
|
||||
If you have any problems with or questions about this image, please contact us through a [GitHub issue](https://github.com/odoo/docker/issues).
|
||||
|
||||
You can also reach many of the official image maintainers via the
|
||||
`#docker-library` IRC channel on [Freenode](https://freenode.net).
|
||||
You can also reach many of the official image maintainers via the `#docker-library` IRC channel on [Freenode](https://freenode.net).
|
||||
|
||||
## Contributing
|
||||
|
||||
You are invited to contribute new features, fixes, or updates, large or small;
|
||||
we are always thrilled to receive pull requests, and do our best to process them
|
||||
as fast as we can.
|
||||
You are invited to contribute new features, fixes, or updates, large or small; we are always thrilled to receive pull requests, and do our best to process them as fast as we can.
|
||||
|
||||
Before you start to code, we recommend discussing your plans
|
||||
through a [GitHub issue](https://github.com/odoo/docker/issues), especially for more ambitious
|
||||
contributions. This gives other contributors a chance to point you in the right
|
||||
direction, give you feedback on your design, and help you find out if someone
|
||||
else is working on the same thing.
|
||||
Before you start to code, we recommend discussing your plans through a [GitHub issue](https://github.com/odoo/docker/issues), especially for more ambitious contributions. This gives other contributors a chance to point you in the right direction, give you feedback on your design, and help you find out if someone else is working on the same thing.
|
||||
|
|
|
|||
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue