Commit Graph

460 Commits

Author SHA1 Message Date
Sebastiaan van Stijn b7d91ae175
Dockerfile: use alpine for fetching external resources
This step does not depend on Jekyll, so using a minimal
base-image.

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2020-03-15 22:43:11 +01:00
Sebastiaan van Stijn 07d410de21
Dockerfile: fix links in same step as generating the files
For intermediate stages, it's generally ok to perform steps
separately, however in this case, fixing the links would
happen every time the HTML was generated, so we might as
well do it in the same step, to reduce the size of the local
build cache, as it was adding 54MB for each rebuild:

    IMAGE               CREATED             CREATED BY                                      SIZE                COMMENT
    7d97d86ae290        3 minutes ago       RUN /bin/sh -c find ${TARGET} -type f -name …   53.7MB              buildkit.dockerfile.v0
    <missing>           3 minutes ago       RUN /bin/sh -c jekyll build -d ${TARGET} # b…   375MB               buildkit.dockerfile.v0

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2020-03-15 18:25:30 +01:00
Sebastiaan van Stijn 20267e58b9
prevent fetching resources when updating _config.yml or toc.yaml
The "fetch-upstream-resources" script also updated the toc.yaml,
based on values in the _config.yml.

As a result, any change in either the "_config.yml" or "toc.yaml"
would also result in the upstream resources to be fetched again.

This patch separates the step to update the toc, so that the
upstream resources can be cached. This _does_ mean that remote
sources can get outdated (only will be rebuilt when changing
ENGINE_BRANCH or DISTRIBUTION_BRANCH). That should not be a
problem for actual deployments, which don't use caching.

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2020-02-28 14:18:17 +01:00
Sebastiaan van Stijn ab9fe6e98e
Dockerfile: remove "deploybase" stage, and inline instead
The "deploybase" stage was only used for the final stage.

This patch inlines the steps from that stage to the final stage
itself. In the process, changing the order of copying the NGINX
configuration file to _after_ the docs were copied. This prevents
having to copy the archived docs when making a change in the NGINX
configuration. The NGINX configuration file _will_ now be copied
on each rebuild, but the file is small, and as such is still faster
than copying all archives.

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2020-02-28 14:17:20 +01:00
Sebastiaan van Stijn 40e5ab6009
Dockerfile: don't use intermediate "deploy-source" stage
The "deploy-source" stage was added in a previous refactor. While
this stage is useful to "export" all docs (including archives if
needed), and _convenient_ to collect all those files to the final
stage, it caused a regression in performance.

This patch changes the final ("deploy") to copy the "archives" and
"current" docs separately, so that the archived versions can be
cached in the final stage, and don't have to be copied again on
each rebuild.

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2020-02-28 14:17:18 +01:00
Sebastiaan van Stijn 7d22d25adf
fetch-upstream-resources: simplify parsing of _config.yml
This part of the script was setting variables for any "_version"
property in the configuration file.

We (currently) only need the engine API version, so simplifying
the code to just do that, and fix some spaces -> tabs indentations.

With this change the script only uses standard (POSIX) scripting,
so switching to use the standard (/bin/sh) shell.

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2020-02-28 14:17:11 +01:00
Usha Mandya f6b590cbb3
Merge pull request #10351 from thaJeztah/use_local_nginx_conf
Dockerfile: use local nginx configuration
2020-02-25 17:35:59 +00:00
Sebastiaan van Stijn 1763c42608
Dockerfile: use local nginx configuration
The docs/docker.github.io:nginx-onbuild has not been
updated for a while, and having a local file present
allows for easier updating it (for example, to add
wildcard redirects).

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2020-02-25 18:33:10 +01:00
Sebastiaan van Stijn c78b3bee78
Reduce list of archives to supported enterprise versions
Docker Enterprise actively supports the 17.06, 18.03, 18.09, and
19.03 versions, with 17.06 and 18.03 reaching EOL soon.

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2020-02-25 17:15:22 +01:00
Sebastiaan van Stijn f2d5f959bc
Dockerfile: add note/todo about use of "toc" and "config"
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2020-02-25 13:15:09 +01:00
Sebastiaan van Stijn 1f7d4ce871
Remove "svn" env-vars for branches
Don't require these to be set upfront, as we can create them
locally in the fetch-upstream-resources.sh script

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2020-02-25 13:15:03 +01:00
Sebastiaan van Stijn 1c82d140f7
Dockerfile: fix value for ENGINE_BRANCH
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2020-02-25 13:15:01 +01:00
Sebastiaan van Stijn c8b335c3b8
Dockerfile: add target to output the generated HTML
This patch adds a stage that only contains the generated files. It can
be used to export the generated HTML for hosting the documentation on a
non-containerised service (e.g. to deploy to an s3 bucket).

When using BuildKit, use the `--output` option to build the files and to
copy them to your local filesystem.

For example, to build current docs, including archives:

    DOCKER_BUILDKIT=1 docker build --target=deploy-source --output=./_site .

And to build without archives:

    DOCKER_BUILDKIT=1 docker build --target=deploy-source --build-arg ENABLE_ARCHIVES=false --output=./_site .

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2020-02-21 10:51:14 +01:00
Sebastiaan van Stijn 136a8d3f96
Dockerfile: allow building docs without archives
This adds a `ENABLE_ARCHIVES` build-arg, which allows building
the documentation without archives.

Note that currently, the archives drop-down is still added
unconditionally (so also included if archives are disabled).

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2020-02-21 10:51:11 +01:00
Sebastiaan van Stijn a6a470e4e9
Dockerfile: use "from scratch" image to collect archives
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2020-02-21 10:51:09 +01:00
Sebastiaan van Stijn 9b47229953
Remove script and build-stage for fetching library samples
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2019-09-04 00:03:10 +02:00
Sebastiaan van Stijn 9d90e6514b
Dockerfile: add temporary stage to export library-samples
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2019-09-04 00:00:23 +02:00
Sebastiaan van Stijn f9f5f8dacd
Convert library samples to stubs
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2019-09-03 23:03:51 +02:00
Ally Smith 736d2c76be 3.0 release configs (#9086)
edit configs for 3.0 release
2019-07-22 17:42:56 +01:00
Sebastiaan van Stijn 573af666e4
Move fetching "library samples" to a separate stage
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2019-03-07 16:27:20 +01:00
Sebastiaan van Stijn c7b9a54df9
Dockerfile: fix missing "boilerplate.txt" in build-stage
Although the docs still rendered ok, some pieces were missing
when generating the "samples", which resulted in warnings during
build:

```
Adding front-matter to ./_samples/library/rethinkdb/README.md ...
cat: can't open './_samples/boilerplate.txt': No such file or directory
Adding front-matter to ./_samples/library/tomcat/README.md ...
cat: can't open './_samples/boilerplate.txt': No such file or directory
```

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2019-03-07 15:15:13 +01:00
Sebastiaan van Stijn 7729a83889
Dockerfile: optimize for caching
The implementation of the Dockerfile first copied the current
version of the documentation, to be followed by fetching upstream
resources, and adding the archived documentation.

As a result, the build-cache was "busted" on every change that was
made locally, causing a full rebuild of both "fetching upstream resources",
building the reference documentation, and generating the archived
versions of the documentation.

With the changes made to the "fetch-upstream-resources.sh" script,
it's now possible to build those docs in advance (in a separate build-
stage), and append the pre-built docs _after_ the current version
of the documentation was built.

This patch updates the Dockerfile to build reference-docs and
archived docs in separate build-stages, optimizing the build for
caching (wich the assumption that no changes are made in upstream
resources between builds). Not only caused this builds to take longer
than needed, but each rebuild also caused new "dangling" images to
be created (in case of the "classic" builder), or new build-caches
to be created (when using BuildKit).

Note that when _deploying_ the documentation, no caching should be
used (to enforce a full rebuild of the documentation, and guarantee
that reference-docs are "fresh").

Before this change, rebuilding the documentation (after a previous
build, so with cache present) took ~185 seconds;

```
docker build -t docs .

[+] Building 184.7s (26/26) FINISHED

 => [builder 2/5] COPY . md_source                                                                                                                                                                                                    2.8s
 => [builder 3/5] RUN bash ./md_source/_scripts/fetch-upstream-resources.sh md_source                                                                                                                                                52.7s
 => [builder 4/5] RUN jekyll build -s md_source -d /usr/share/nginx/html --config md_source/_config.yml                                                                                                                             113.0s
 => [builder 5/5] RUN find /usr/share/nginx/html -type f -name '*.html' | grep -vE "v[0-9]+\." | while read i; do sed -i 's#href="https://docs.docker.com/#href="/#g' "$i"; done                                                      4.4s
 => CACHED [stage-1 2/8] COPY --from=docs/docker.github.io:nginx-onbuild /etc/nginx/conf.d/default.conf /etc/nginx/conf.d/default.conf                                                                                                0.0s
 => CACHED [stage-1 3/8] COPY --from=docs/docker.github.io:v17.03 /usr/share/nginx/html /usr/share/nginx/html                                                                                                                         0.0s
 => CACHED [stage-1 4/8] COPY --from=docs/docker.github.io:v17.06 /usr/share/nginx/html /usr/share/nginx/html                                                                                                                         0.0s
 => CACHED [stage-1 5/8] COPY --from=docs/docker.github.io:v17.09 /usr/share/nginx/html /usr/share/nginx/html                                                                                                                         0.0s
 => CACHED [stage-1 6/8] COPY --from=docs/docker.github.io:v17.12 /usr/share/nginx/html /usr/share/nginx/html                                                                                                                         0.0s
 => CACHED [stage-1 7/8] COPY --from=docs/docker.github.io:v18.03 /usr/share/nginx/html /usr/share/nginx/html                                                                                                                         0.0s
 => [stage-1 8/8] COPY --from=builder /usr/share/nginx/html /usr/share/nginx/html                                                                                                                                                     3.7s
 => exporting to image                                                                                                                                                                                                                5.1s
 => => exporting layers                                                                                                                                                                                                               5.1s
 => => writing image sha256:70f77631001bd0271455f893b87dd75a1fd6f5db84a00feb8afe5ddf5a697d7d                                                                                                                                          0.0s
 => => naming to docker.io/library/docs                                                                                                                                                                                               0.0s
```

After this change, archives and reference-docs are using the build-cache,
and building was reduced to ~126 seconds (most of that taken by Jekyll to
generate the static HTML);

```
docker build -t docs .

+] Building 126.4s (30/30) FINISHED
...
 => CACHED [upstream-resources 1/4] COPY ./_scripts/fetch-upstream-resources.sh ./_scripts/                                                                                                                                           0.0s
 => CACHED [upstream-resources 2/4] COPY ./_config.yml .                                                                                                                                                                              0.0s
 => CACHED [upstream-resources 3/4] COPY ./_data/toc.yaml ./_data/                                                                                                                                                                    0.0s
 => CACHED [upstream-resources 4/4] RUN bash ./_scripts/fetch-upstream-resources.sh .                                                                                                                                                 0.0s
 => [current 2/4] COPY --from=upstream-resources /usr/src/app/md_source/. ./                                                                                                                                                          1.5s
 => [current 3/4] RUN jekyll build -d /usr/share/nginx/html                                                                                                                                                                         108.9s
 => [current 4/4] RUN find /usr/share/nginx/html -type f -name '*.html' | grep -vE "v[0-9]+\." | while read i; do sed -i 's#href="https://docs.docker.com/#href="/#g' "$i"; done                                                      4.8s
 => CACHED [deploybase 2/2] COPY --from=docs/docker.github.io:nginx-onbuild /etc/nginx/conf.d/default.conf /etc/nginx/conf.d/default.conf                                                                                             0.0s
 => CACHED [archives 1/5] COPY --from=docs/docker.github.io:v17.03 /usr/share/nginx/html /usr/share/nginx/html                                                                                                                        0.0s
 => CACHED [archives 2/5] COPY --from=docs/docker.github.io:v17.06 /usr/share/nginx/html /usr/share/nginx/html                                                                                                                        0.0s
 => CACHED [archives 3/5] COPY --from=docs/docker.github.io:v17.09 /usr/share/nginx/html /usr/share/nginx/html                                                                                                                        0.0s
 => CACHED [archives 4/5] COPY --from=docs/docker.github.io:v17.12 /usr/share/nginx/html /usr/share/nginx/html                                                                                                                        0.0s
 => CACHED [archives 5/5] COPY --from=docs/docker.github.io:v18.03 /usr/share/nginx/html /usr/share/nginx/html                                                                                                                        0.0s
 => [deploy 1/1] COPY --from=current /usr/share/nginx/html /usr/share/nginx/html                                                                                                                                                      4.1s
 => exporting to image                                                                                                                                                                                                                1.9s
 => => exporting layers                                                                                                                                                                                                               1.9s
 => => writing image sha256:e76359b937fb4d956fb17e889a7333687929d4c9ae093909fe5630a8f3e4de64                                                                                                                                          0.0s
 => => naming to docker.io/library/docs                                                                                                                                                                                               0.0s
```

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2019-03-06 16:38:38 +01:00
Sebastiaan van Stijn f98576eaa2
Dockerfile: use ARG to configure engine and distribution branches
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2019-03-06 15:15:14 +01:00
Sebastiaan van Stijn 5d8ce076f7
Dockerfile: remove use of $SOURCE env-var
This variable is no longer needed, as the scripts are
always executed relative to the current directory (`.`).

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2019-03-06 15:10:07 +01:00
Sebastiaan van Stijn d386c4cd2c
Dockerfile: use WORKDIR to simplify steps
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2019-03-06 15:02:29 +01:00
paigehargrave 1bd777e22d
Update Dockerfile 2019-01-09 10:51:06 -05:00
Maria Bermudez 5515c2ba33 Update 18.03 tag 2018-11-07 14:15:52 -08:00
Maria Bermudez 169da400a1 Add new archive that's pointed to docs/docs-private for now - will need to be changed when we go live 2018-11-06 12:58:05 -08:00
Joao Fernandes bb1b53897c Update archives.yml for 18.03 2018-03-22 16:52:53 -07:00
Misty Stanley-Jones de9262b939
Add 17.09 archive to Dockerfile (#5660) 2018-01-03 11:47:32 -08:00
Misty Stanley-Jones 44d4cb7665
Improve ordering of master Dockerfile (#5630) 2017-12-27 10:13:44 -08:00
Misty Stanley-Jones 6051302b4d
Use multistage build for master (#5369) 2017-12-26 23:17:44 -08:00
Misty Stanley-Jones a30b95e49d Add API 1.33, API matrix 2017-10-17 21:34:07 -07:00
Misty Stanley-Jones 6aae2e4e84 Add pointer to latest API ref (#4897) 2017-10-16 15:04:24 -07:00
Misty Stanley-Jones 103a3f8003 17.03 archive setup (#3753) 2017-06-29 16:55:18 -07:00
John Mulhausen 089f17eade
Add to shell call, Alpine necessity 2017-05-25 15:08:51 -07:00
John Mulhausen f95cccd24a
Update docs base description 2017-05-25 15:00:02 -07:00
Misty Stanley-Jones 9c648cf079 Docker 17.05 docs (#3092)
* Add Netlify build script

* Pull 'edge' stuff from master for now

* Add env-regex logging opt (#2688)

* Update Dockerfile to pull from 17.05 branch

* Update YAML files from 17.05.x branch

* Add scaffolding for 17.05 content

* Document highlights for 17.05

* Add v1.29 API

* Document multi-stage builds
2017-05-05 19:50:22 +00:00
Misty Stanley-Jones 10be60a80f Go back to small /edge (#2736)
* Go back to small /edge

* Update site front page

Add info about Editions
Reorganize components
Update headings

* Move logic of fetching content to a script

* Add v1.28 API

* Add info about versioned API
2017-04-13 18:58:56 -07:00
Misty Stanley-Jones 62d34e400b Update Dockerfile to build /edge 2017-04-05 17:45:44 -07:00
Misty Stanley-Jones e796ce8148 Site-specific changes for Edge 2017-04-05 17:45:44 -07:00
Misty Stanley-Jones dfc7f870c1 Use a different variable for svn than wget
The master branch is called trunk in svn parlance
and the directory structure is a little bit different.

Also trust the certificates for the https svn connections,
otherwise we may be prompted.

Fix Dockerfile in vnext-engine
2017-04-05 17:45:44 -07:00
Misty Stanley-Jones 184897095f Use a different variable for svn than wget
The master branch is called trunk in svn parlance
and the directory structure is a little bit different.

Also trust the certificates for the https svn connections,
otherwise we may be prompted.
2017-04-05 17:45:44 -07:00
Misty Stanley-Jones cb0c69c9d5 Fix Dockerfile in vnext-engine 2017-04-05 17:45:44 -07:00
Misty Stanley-Jones cff043f5a3 Use a different variable for svn than wget
The master branch is called trunk in svn parlance
and the directory structure is a little bit different.

Also trust the certificates for the https svn connections,
otherwise we may be prompted.
2017-04-05 17:45:44 -07:00
Misty Stanley-Jones 13004b9ed1 Take docker/docker references from master 2017-04-05 17:45:44 -07:00
Misty Stanley-Jones e6aa7e3f50 Update distribution version in Dockerfile (#2632) 2017-04-05 11:20:49 -07:00
Victor Vieux ad065409d9 bump api to 1.27 (#2461)
* bump api to 1.27

Signed-off-by: Victor Vieux <victorvieux@gmail.com>
2017-03-28 09:31:53 -07:00
Misty Stanley-Jones fc343a81fc Update to new Docker version scheme (#1926) 2017-03-01 14:52:34 -08:00
John Mulhausen a3dd8ff96e Switch to auto-building source of docs-base 2017-02-11 02:55:53 -08:00
John Mulhausen 69f622bb70 Move to GHP 112, nginx-based server, docs-base (#1515)
* Moves to GHP 112, nginx-based server

* Import official nginx instructions per @thaJeztah

* Reordering of commands per @thaJeztah

* Reordering of commands per @thaJeztah

* Make sure that at the end of each layer we only keep the one directory

* Forgot to use md_source when resolving conflicts

* Update Dockerfile

* Use base image, clean up cruft from docsarchive folder

* Update docs-base to be self-browseable, conf source of truth
2017-02-09 17:17:07 -08:00
Victor Vieux 80fa030ffd bump engine API to 1.26 (#1553)
Signed-off-by: Victor Vieux <victorvieux@gmail.com>
2017-02-08 13:18:24 -08:00
John Mulhausen b547d91606
Publish v1.12 archive 2017-02-01 15:56:44 -08:00
Adrien Duermael edf388efc9 remove apidocs/layout after jekyll build
Signed-off-by: Adrien Duermael <adrien@duermael.com>
2017-01-26 12:02:33 -08:00
Adrien Duermael 900cd57a1c make links to https://docs.docker.com relative
All of them, not just the ones in /engine/extend & /engine/reference

Signed-off-by: Adrien Duermael <adrien@duermael.com>
2017-01-26 10:47:24 -08:00
Adrien Duermael 6129c4c255 remove apidocs/layouts after build (#1357)
* remove apidocs/layouts after build

Signed-off-by: Adrien Duermael <adrien@duermael.com>

* fixed keywords in swarm_manager_locking.md

Signed-off-by: Adrien Duermael <adrien@duermael.com>
2017-01-24 14:26:04 -08:00
Misty Stanley-Jones 48c384cede Don't fetch the registry api template (#1341) 2017-01-23 15:01:27 -08:00
Adrien Duermael 366fb5b964 Link fixes (#1291)
* fixed links in toc.yaml

Signed-off-by: Adrien Duermael <adrien@duermael.com>

* removed backslashed spaces in Dockerfile

Signed-off-by: Adrien Duermael <adrien@duermael.com>
2017-01-20 14:00:33 -08:00
John Mulhausen ebe778b906 Update imports to work properly (#1221)
Update imports to work properly
2017-01-20 09:58:54 -08:00
John Mulhausen 35898701eb YAML-sourced CLI refdocs 2017-01-19 11:12:55 -08:00
Ben Firshman f8dac1b53c Add automatically generated Engine API docs
Signed-off-by: Ben Firshman <ben@firshman.co.uk>
2017-01-19 10:45:07 -08:00
Misty Stanley-Jones 4197fd8268 Update dockerfile vnext (#874)
* Merge pull request #731 from mstanleyjones/distribution_docs_from_upstream

Pull distribution reference docs from upstream repo

* Bump Engine ref docs branch to 1.13.x

Signed-off-by: Misty Stanley-Jones <misty@docker.com>
2017-01-19 10:43:39 -08:00
Adrien Duermael 41cdf339f6 CI - added tests for relative links [DO NOT MERGE] (#1052)
* CI - added tests for relative links

Signed-off-by: Adrien Duermael <adrien@duermael.com>

* fixes to check relative links properly

Signed-off-by: Adrien Duermael <adrien@duermael.com>

* /engine/extend/plugins/ -> /engine/extend/legacy_plugins/

Signed-off-by: Adrien Duermael <adrien@duermael.com>

* do not build /tests folder with Jekyll…

Signed-off-by: Adrien Duermael <adrien@duermael.com>

* list all problematic urls in each file

don’t stop at first error encountered

Signed-off-by: Adrien Duermael <adrien@duermael.com>

* removed “stack tasks” from menu (toc.yaml)

Signed-off-by: Adrien Duermael <adrien@duermael.com>

* fixed broken links

Signed-off-by: Adrien Duermael <adrien@duermael.com>

* fixed broken link in docker-for-mac/osxfs.md

Signed-off-by: Adrien Duermael <adrien@duermael.com>

* fixed broken links in /index.html

Signed-off-by: Adrien Duermael <adrien@duermael.com>
2017-01-17 13:11:15 -08:00
Adrien Duermael 1ef7132a6f exclude /apidocs/cloud-api-source when building
Signed-off-by: Adrien Duermael <adrien@duermael.com>
2017-01-11 14:46:06 -08:00
Adrien Duermael 609c66710b Fixed absolute links in external content (#886)
The files we’re pulling from docker/docker may include links to docs.docker.com. And we can’t forbid that because relative links wouldn’t make sense in the context of docker/docker repository in some situations. So let’s just fix these links right after get imported.

Signed-off-by: Adrien Duermael <adrien@duermael.com>
2016-12-15 17:58:30 -08:00
Adrien Duermael 5b8abceb56 don’t copy files to /_site (#871)
files in /usr/src/app/allvbuild and /_site are the same. Let’s just serve what’s in /usr/src/app/allvbuild.

Signed-off-by: Adrien Duermael <adrien@duermael.com>
2016-12-13 15:28:42 -08:00
Misty Stanley-Jones f2857417d1 Merge remote-tracking branch 'upstream/master' into distribution_docs_from_upstream 2016-11-30 10:23:11 -08:00
Misty Stanley-Jones 554b2c9967 Pull distribution reference docs from upstream 2016-11-28 13:51:52 -08:00
Sebastiaan van Stijn 721f9d2aba
Optimize Dockerfile
This optimizes the Dockerfile a bit by;

- putting the docs archives at the top to
  optimize caching and to prevent having
  to clone the github repository on each
  build. Note that '--no-cache' is needed
  to forcefully break the cache, but the
  archives should not frequently change
- grouping RUN lines to reduce image size.
- using a loop for the archived versions to
  reduce the amount of duplicated code.
- using the local files for the *current*
  version of the docs instead of the git
  clone from GitHub. this makes it also
  use the right source instead of "master"
- adding a .dockerignore to prevent busting
  the cache if not needed, and to prevent
  uploading the '.git' repository, which
  is not used for the "current" docs

Difference in size before/after;

    REPOSITORY     TAG     IMAGE ID      CREATED         SIZE
    docs           latest  36f6ad029e6a  3 minutes ago   1.722 GB
    docs-orig      latest  4f1a3e3fda4f  16 minutes ago  3.344 GB

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2016-11-22 00:20:02 +01:00
John Mulhausen 57fcd95be9 Reverting reversion, geez 2016-11-18 19:08:42 -08:00
John Mulhausen 69f07bcd1e Revert "Merge pull request #654 from mstanleyjones/fix_dockerfile"
This reverts commit 2ede6ff7f0, reversing
changes made to 30772c6703.
2016-11-18 19:04:42 -08:00
Misty Stanley-Jones fbab0cf7b9 Fixing the Dockerfile 2016-11-18 16:40:06 -08:00
Misty Stanley-Jones 2a82508963 Change Dockerfile to fetch engine refs from docker/docker 1.12.x branch
Update Dockerfile and NOT_EDITED_HERE manifest

Signed-off-by: Misty Stanley-Jones <misty@docker.com>
2016-11-16 15:50:24 -08:00
John Mulhausen 9e96e483bc Create subdirectory-based docs archive 2016-10-26 17:48:00 -07:00
John Mulhausen b62fd51a29 Update Dockerfile 2016-10-05 15:31:14 -07:00
John Mulhausen 8f61311862 Dockerfile fix for autobuild 2016-10-04 00:26:09 -07:00
John Mulhausen d12eeca057 baseurl fix 2016-10-03 19:44:51 -07:00
John Mulhausen e71693c545 baseurl fix 2016-10-03 19:44:11 -07:00
John Mulhausen bc04375f4e Create Dockerfile 2016-10-03 17:27:35 -07:00
John Mulhausen 99bab305bd Removing merge detritus 2016-09-29 23:38:12 -07:00
Misty Stanley-Jones d53c6798c9 Convert TOML to YAML, tweaks to work with Jekyll 2016-09-29 17:16:03 -07:00
Misty Stanley-Jones 9d5e59d503 Moved engine imported docs to the engine subdirectory 2016-09-29 11:19:31 -07:00
Kenfe-Mickael Laventure 727402135d Vendor in containerd
This brings in the exec's children handling fixes

Signed-off-by: Kenfe-Mickael Laventure <mickael.laventure@gmail.com>
2016-09-25 05:23:22 -07:00
Justin Cormack ef634b95f4 Patch Go with fix for OSX Sierra
Backport this patch to the Go 1.6.3 runtime needed for OSX Sierra.

Signed-off-by: Justin Cormack <justin.cormack@docker.com>
2016-09-23 23:30:25 +01:00
Kenfe-Mickael Laventure 6c717a5744 Vendor in new containerd
This version introduces the following:
 - uses nanosecond timestamps for event
 - ensure events are sent once their effect is "live"

Signed-off-by: Kenfe-Mickael Laventure <mickael.laventure@gmail.com>
(cherry picked from commit 29b2714580d085533c29807fa337c2b7a302abb6)
Signed-off-by: Tibor Vass <tibor@docker.com>
2016-07-25 23:15:42 -07:00
Sebastiaan van Stijn 47a16dbe31 bump Go to 1.6.3
following the announcement;
https://groups.google.com/forum/m/#!topic/golang-announce/7JTsd70ZAT0

> [security] Go 1.6.3 and Go 1.7rc2 pre-announcement
>
> Hello gophers,
> We plan to issue Go 1.6.3 and Go 1.7rc2 on Monday July 18 at approximately 2am UTC.
> These are minor release to fix a security issue.
>
> Following our policy at https://golang.org/security, this is the pre-announcement of those releases.
>
> Because we are so late in the release cycle for Go 1.7, we will not issue a minor release of Go 1.5.
> Additionally, we plan to issue Go 1.7rc3 later next week, which will include any changes between 1.7rc1 and tip.
>
> Cheers,
> Chris on behalf of the Go team

**Note:**
the man/Dockerfile is not yet updated, because
the official image for Go 1.6.2 has not yet
been updated.

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
(cherry picked from commit 589bafddf391cbf6aff8b22044266dc819cdcaeb)
Signed-off-by: Tibor Vass <tibor@docker.com>
2016-07-25 23:15:39 -07:00
Kenfe-Mickael Laventure 5199e3960e Vendor containerd 1b3a81545ca79456086dc2aa424357be98b962ee
Signed-off-by: Kenfe-Mickael Laventure <mickael.laventure@gmail.com>
(cherry picked from commit 2685c82c2e1e75c1f7b39e8cb6e3d5acf258654d)
2016-07-01 12:01:28 -07:00
Michael Crosby 4dc392b213 Update containerd to b93a33be39bc4ef0fb00bfcb79147
This updates containerd to b93a33be39bc4ef0fb00bfcb79147a28c33d9d43
fixing the start sync issues.

Signed-off-by: Michael Crosby <crosbymichael@gmail.com>
(cherry picked from commit 7db7e046315eed5ccfb3a913b965be4b1a595601)
2016-06-30 16:47:52 -07:00
Akihiro Suda 71dbab2235 update go-md2man to v1.0.5
Due to the issue of go-md2man, a numbered list in `man docker login` was not rendered correctly.
a8f937e113

Signed-off-by: Akihiro Suda <suda.akihiro@lab.ntt.co.jp>
(cherry picked from commit cfe16e0d5b4bb7d1d194553f2a82cc1879d60e6b)
2016-06-30 16:47:47 -07:00
Kenfe-Mickael Laventure 9eb6e049bd Vendor in runc cc29e3dded8e27ba8f65738f40d251c885030a28
Signed-off-by: Kenfe-Mickael Laventure <mickael.laventure@gmail.com>
(cherry picked from commit b675124cf5fc96a6c329b5580ef60304089270c6)
2016-06-16 08:46:23 -07:00
Kenfe-Mickael Laventure 1aec3bacfd Vendor in new runc binary with userns fix
Signed-off-by: Kenfe-Mickael Laventure <mickael.laventure@gmail.com>
2016-06-14 07:47:31 -07:00
Kenfe-Mickael Laventure 2e9ea5c194 Update containerd and runc vendoring
containerd: 860f3a94940894ac0a106eff4bd1616a67407ee2
runc: 85873d917e86676e44ccb80719fcb47a794676a1
runtime-specs: v1.0.0-rc1

Signed-off-by: Kenfe-Mickael Laventure <mickael.laventure@gmail.com>
2016-06-14 07:47:31 -07:00
Michael Crosby d17b9f3da0 Update containerd to cf554d59dd96e459544748290eb91
This bumps containerd to cf554d59dd96e459544748290eb9167f4bcde509 and
includes various fixes and updates the grpc package and types generated
for use.

Signed-off-by: Michael Crosby <crosbymichael@gmail.com>
2016-06-07 15:27:23 -07:00
Michael Crosby f8dacaf0ab Use clang 3.5 over 3.8
the llvm apt repo was removed and finding the exact rev of the llvm
toolchain that worked perfecting in our dockerfile is a problem.

We looked at the reasons why we were using this version of clang and it
appears to be this compiler warning.

`was built for newer OSX version (10.11) than being linked
(10.6)`

When you look at the dockerfile this makes sense.

```
ENV OSX_SDK MacOSX10.11.sdk
ENV OSX_CROSS_COMMIT 8aa9b71a394905e6c5f4b59e2b97b87a004658a4
RUN set -x \
	&& export OSXCROSS_PATH="/osxcross" \
	&& git clone https://github.com/tpoechtrager/osxcross.git $OSXCROSS_PATH \
	&& ( cd $OSXCROSS_PATH && git checkout -q $OSX_CROSS_COMMIT) \
	&& curl -sSL https://s3.dockerproject.org/darwin/v2/${OSX_SDK}.tar.xz -o "${OSXCROSS_PATH}/tarballs/${OSX_SDK}.tar.xz" \
	&& UNATTENDED=yes OSX_VERSION_MIN=10.6 ${OSXCROSS_PATH}/build.sh
ENV PATH /osxcross/target/bin:$PATH
```

We are basically using the 10.11 sdk but linking to 10.6 as the
min version so this warning should be expected.

Also the docs on the osxcross project require clan 3.2+, not 3.8.

Signed-off-by: Michael Crosby <crosbymichael@gmail.com>
2016-05-31 16:45:42 -07:00
Michael Crosby 58b4164feb Merge pull request #23061 from thaJeztah/remove-GO15VENDOREXPERIMENT
Remove GO15VENDOREXPERIMENT
2016-05-27 16:54:19 -07:00
Sebastiaan van Stijn b4708e2754
Remove GO15VENDOREXPERIMENT
This environment variable is no longer
needed in Go 1.6 (as it's not the default).

Removed this environment variable from
all Dockerfiles except the Dockerfile.s390x,
which is still using gcc 5.3 (Go 1.5)

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2016-05-27 18:15:01 +02:00
Christy Perez d864a14620 Bump the seccomp versions to pull in fixes and new commits
enabling s390 and ppc64le function

Signed-off-by: Christy Perez <christy@linux.vnet.ibm.com>
2016-05-27 11:12:47 -04:00
Antonio Murdaca 40b21745cc Upgrade to golang 1.6.2
Signed-off-by: Antonio Murdaca <runcom@redhat.com>
2016-05-25 11:58:48 +02:00
cyli 6094be63ac Bump notary version up to 0.3.0 and re-vendor.
Signed-off-by: cyli <cyli@twistedmatrix.com>
2016-05-11 22:57:51 -07:00
Michael Crosby cfb9764386 Update runc and containerd deps
containerd:     57b7c3da915ebe943bd304c00890959b191e5264
runc:           d49ece5a83da3dcb820121d6850e2b61bd0a5fbe

Signed-off-by: Michael Crosby <crosbymichael@gmail.com>
2016-05-09 15:05:44 -07:00
cyli 88c6675ed2 Bump notary version to v0.3.0-RC1
Signed-off-by: cyli <cyli@twistedmatrix.com>
2016-05-06 10:59:26 -07:00
Shijiang Wei e6590b5fa2 vendor docker-py 7befe694bd21e3c54bb1d7825270ea4bd6864c13
Signed-off-by: Shijiang Wei <mountkin@gmail.com>
2016-05-02 23:04:04 +08:00
Michael Holzheu 6e4c87c06e Dockerfile.s390x: Build correct registries and notary client
Sync with other Dockerfiles:

 1) Adjust REGISTRY_COMMIT
 2) Add old shema1 registry
 3) Install notary client

This fixes the following testcases:

 DockerSchema1RegistrySuite:
  - SetUpTest
 DockerTrustSuite:
  - TestTrustedBuildTagFromReleasesRole
  - TestTrustedBuildTagIgnoresOtherDelegationRoles
  - TestTrustedPullReadsFromReleasesRole
  - TestTrustedPullIgnoresOtherDelegationRoles
  - TestTrustedPushWithReleasesDelegationOnly
  - TestTrustedPushSignsAllFirstLevelRolesWeHaveKeysFor
  - TestTrustedPushSignsForRolesWithKeysAndValidPaths
  - TestTrustedPushDoesntSignTargetsIfDelegationsExist
 DockerRegistrySuite:
  - TestPullManifestList
  - TestCrossRepositoryLayerPush
 DockerHubPullSuite:
  - TestPullAllTagsFromCentralRegistry

v2: Sync comments on all architectures

Signed-off-by: Michael Holzheu <holzheu@linux.vnet.ibm.com>
2016-04-29 19:24:49 +02:00
John Howard 78895c92c2 Merge pull request #22275 from Microsoft/jstarks/no_rsrc
Windows: Add file version information
2016-04-25 20:53:19 -07:00
Mrunal Patel e0f98c698b Update runc and spec dependencies for mount label
Signed-off-by: Mrunal Patel <mrunalp@gmail.com>

Set up the mount label in the spec for a container

Signed-off-by: Mrunal Patel <mrunalp@gmail.com>
2016-04-25 14:26:49 -07:00
John Starks 4677f8036e Windows: Add file version information
This change adds file version information to docker.exe and dockerd.exe by
adding a Windows version resource with the windres tool.

This change adds a dependency to binutils-mingw-w64 on Linux, but removes
a dependency on rsrc. Most Windows build environments should already have
windres if they have gcc (which is necessary to build dockerd).

Signed-off-by: John Starks <jostarks@microsoft.com>
2016-04-24 10:55:51 -07:00
Michael Crosby 199472c75a Bump containerd to v0.2.1
Signed-off-by: Michael Crosby <crosbymichael@gmail.com>
2016-04-22 09:39:02 -07:00
Tibor Vass 3b3e58b639 Workaround Windows bug discovered with Go security fix
For context: https://github.com/golang/go/issues/15286

This commit downloads go1.5.3 in addition to go1.5.4 in order to
workaround the issue.

It is not expected to do a Docker release without a proper fix, however
this should help unblock Docker development on Windows TP5.

Signed-off-by: Tibor Vass <tibor@docker.com>
2016-04-15 21:00:45 -04:00
Qiang Huang e67c758ec3 Remove template code for runc and containerd
Signed-off-by: Qiang Huang <h.huangqiang@huawei.com>
2016-04-15 12:45:35 +08:00
Tibor Vass 7268eb97bc Bump Go version to 1.5.4/1.6.1 (security fix) (#21978)
Go 1.6.1 is for ppc64le only.

https://groups.google.com/forum/#!msg/golang-announce/9eqIHqaWvck/kXsfO0ogLAAJ

Dockerfile.armhf cannot currently be updated.

Signed-off-by: Tibor Vass <tibor@docker.com>
2016-04-13 11:22:48 -07:00
Tibor Vass c3fe4226f3 vendor runc to fix issue#21808
Signed-off-by: Tibor Vass <tibor@docker.com>
2016-04-12 15:35:43 -04:00
Tonis Tiigi 3f81b49352 Define readonly/mask paths in spec
This vendors in new spec/runc that supports
setting readonly and masked paths in the 
configuration. Using this allows us to make an
exception for `—-privileged`.

Signed-off-by: Tonis Tiigi <tonistiigi@gmail.com>
2016-04-04 18:55:55 -07:00
Tibor Vass 3acb466f2d Merge pull request #21695 from kencochrane/change_tgz_to_zip_on_windows
Change the windows bundle from a .tgz to a .zip file
2016-03-31 18:40:37 -04:00
Ken Cochrane fda99a7e16 Change the windows .tgz to a .zip file
Signed-off-by: Ken Cochrane <kencochrane@gmail.com>
2016-03-31 15:56:13 -04:00
Tonis Tiigi 8a4225cd5a Bring back support for DOCKER_RAMDISK
Fixes #21631

Signed-off-by: Tonis Tiigi <tonistiigi@gmail.com>
2016-03-31 10:29:32 -07:00
Sebastiaan van Stijn 71cab5b0dc Merge pull request #21629 from thaJeztah/bump-runc
Bump runC to 40f4e7873d88a4f4d12c15d9536bb1e34aa2b7fa
2016-03-29 23:07:12 -07:00
Tibor Vass d800be743d Merge pull request #21591 from riyazdf/hardware-signing-non-experimental
move hardware signing out of experimental, remove yubico-piv-tool deps
2016-03-30 00:09:22 -04:00
Sebastiaan van Stijn 752b31d3fe Bump runC to 40f4e7873d88a4f4d12c15d9536bb1e34aa2b7fa
This includes fixes for;

- outputing errors for missing seccomp options on seccomp versions < 2.3
- cap set apply EPERM errors on ARM systems

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2016-03-29 17:10:05 -07:00
David Calavera 99adcaebc0 Merge pull request #21592 from anusha-ragunathan/docker-systemd
When using systemd, pass expected cgroupsPath and cli options to runc.
2016-03-29 17:00:10 -07:00
Anusha Ragunathan 7ed3d265a4 When using systemd, pass expected cgroupsPath and cli options to runc.
runc expects a systemd cgroupsPath to be in slice:scopePrefix:containerName
format and the "--systemd-cgroup" option to be set. Update docker accordingly.

Fixes 21475

Signed-off-by: Anusha Ragunathan <anusha@docker.com>
2016-03-29 14:20:10 -07:00
David Calavera d78f8f2796 Merge pull request #21608 from albers/build-clone-https
Use https for `git clone` in build
2016-03-29 11:30:35 -07:00
Kenfe-Mickael Laventure 73672c5bd8 Update the llvm repo to use the debian jessie url
Signed-off-by: Kenfe-Mickael Laventure <mickael.laventure@gmail.com>
2016-03-29 08:39:16 -07:00
Harald Albers a7e9bf6cb7 Use https for `git clone` in build
Signed-off-by: Harald Albers <github@albersweb.de>
2016-03-29 09:35:42 +02:00
Riyaz Faizullabhoy 8d18e6b30f move hardware signing out of experimental, remove dependencies to yubico-piv-tool
Signed-off-by: Riyaz Faizullabhoy <riyaz.faizullabhoy@docker.com>
2016-03-28 14:33:06 -07:00
Tonis Tiigi 8ec8564691 Allow specifying apt mirror in dockerfile
Signed-off-by: Tonis Tiigi <tonistiigi@gmail.com>
2016-03-28 13:47:28 -07:00
Tibor Vass 996138bf8e Fix release scripts
Add some missing dependencies in the Dockerfile:
- apt-utils for apt-ftparchive.conf
- bsdmainutils for our use of the column command in
  hack/make/generate-index-listing

We also ensure that the docker daemon is started before calling
release-deb or release-rpm, since .detect-daemon-osarch, which is sourced
in each of them, requires the daemon to be running.

This commit also gets completely rid of s3cmd and fixes references to
AWS_* environment variables (changing from AWS_ACCESS_KEY to
AWS_ACCESS_KEY_ID and AWS_SECRET_KEY to AWS_SECRET_ACCESS_KEY) in order
to please awscli. Also AWS_DEFAULT_REGION is now important to specify,
the default has been set to the region used by get.docker.com and
test.docker.com.

Signed-off-by: Tibor Vass <tibor@docker.com>
2016-03-25 11:55:26 -04:00
Alexander Morozov d5019972e5 Merge pull request #21499 from cyli/hardware-signing-experimental-again
Move hardware signing back to experimental again
2016-03-24 23:03:13 -07:00
cyli dd33d18045 Revert "Merge pull request #21003 from riyazdf/hardware-signing-ga"
This reverts commit e6d3a9849c, reversing
changes made to d3afe34b51.

Signed-off-by: cyli <cyli@twistedmatrix.com>
2016-03-24 21:12:52 -07:00
David Calavera 3e0bd74a3d Downgrade to Go 1.5.3.
To not hit the issue with the request Host header.

Signed-off-by: David Calavera <david.calavera@gmail.com>
2016-03-24 19:15:10 -04:00
Tonis Tiigi 22d997b374 Update runc/containerd
Contains fixes for:
- pid.max fix that is causing hang on network stats test.
- fix for early stdin close containerd-shim
- better logging for `could not synchronise with container process`

Signed-off-by: Tonis Tiigi <tonistiigi@gmail.com>
2016-03-23 15:38:33 -07:00
Vincent Demeester f4dfe15cbe Merge pull request #21420 from icecrime/update_arm_build
Update Dockerfile.armhf
2016-03-23 16:27:53 +01:00
Tibor Vass 009399dc8e Add `docker-` prefix to runc and containerd binaries
Signed-off-by: Tibor Vass <tibor@docker.com>
2016-03-23 00:52:16 -04:00
Arnaud Porterie 38d746462c Update Dockerfile.armhf
Use official Go 1.6 release, and update golang/tools and golang/lint
hashes accordingly.

Signed-off-by: Arnaud Porterie <arnaud.porterie@docker.com>
2016-03-22 20:19:39 -07:00
Riyaz Faizullabhoy ab3772f72f vendor notary for docker1.11
Signed-off-by: Riyaz Faizullabhoy <riyaz.faizullabhoy@docker.com>
2016-03-22 11:28:19 -07:00
Tonis Tiigi 9c4570a958 Replace execdrivers with containerd implementation
Signed-off-by: Tonis Tiigi <tonistiigi@gmail.com>
Signed-off-by: Kenfe-Mickael Laventure <mickael.laventure@gmail.com>
Signed-off-by: Anusha Ragunathan <anusha@docker.com>
2016-03-18 13:38:32 -07:00
Tibor Vass e6d3a9849c Merge pull request #21003 from riyazdf/hardware-signing-ga
Move hardware signing out of experimental
2016-03-17 14:16:40 -04:00
Justin Cormack 68bda672dc Update statically linked libseccomp to 2.3.0
Fixes #20550

This update to libseccomp supports the new versions of socket
system calls that can be called directly rather than via the
socketcall syscall in kernel versions 4.3 or later with new glibc.

Note this library version now supports s390x and ppc64le, so
seccomp can be potentially be enabled for these architectures now.

Signed-off-by: Justin Cormack <justin.cormack@docker.com>
2016-03-11 13:01:30 +00:00
Riyaz Faizullabhoy 37fa75b344 Move pkcs11 out of experimental, into GA
Signed-off-by: Riyaz Faizullabhoy <riyaz.faizullabhoy@docker.com>
2016-03-07 10:07:40 -08:00
unclejack 6a20165da7 Merge pull request #20418 from calavera/go_1_6
Upgrade Go to 1.6.
2016-03-01 13:52:19 +02:00
David Calavera 14d5c91d87 Upgrade Go to 1.6.
Signed-off-by: David Calavera <david.calavera@gmail.com>
2016-02-29 17:08:52 -05:00
Arnaud Porterie 2140650b56 Pin tpoechtrager/osxcross commit
Signed-off-by: Arnaud Porterie <arnaud.porterie@docker.com>
2016-02-27 12:04:49 -08:00
Riyaz Faizullabhoy 84dc2d9e70 Vendor in notary v0.2.0
Signed-off-by: Riyaz Faizullabhoy <riyaz.faizullabhoy@docker.com>
2016-02-25 13:40:00 -08:00
Tibor Vass f27b5dda4a Switch Dockerfile to debian:jessie
Fixes broken-pipe issue when piping s3cmd to grep -q, by removing the -q
flag and redirecting to /dev/null instead.

Add net-tools for ifconfig, because some tests rely on ifconfig.

Harmonize all Dockerfiles in this direction.

Signed-off-by: Tibor Vass <tibor@docker.com>
2016-02-12 21:49:54 -05:00
Tibor Vass 91cdadf37e Add pgp.mit.edu fallback in Dockerfile
Signed-off-by: Tibor Vass <tibor@docker.com>
2016-02-12 11:54:47 -05:00
Jessica Frazelle 9b8d328666
update comment
Signed-off-by: Jessica Frazelle <acidburn@docker.com>
2016-02-02 10:03:52 -08:00
cyli 71a1caddf0 Include a new version of notary with less verbose INFO+ logging
Signed-off-by: cyli <cyli@twistedmatrix.com>
2016-01-27 09:46:26 -08:00
cyli 8fd2c8791d Re-vendor notary, as well as change jfrazelle/go to docker/go.
Signed-off-by: cyli <cyli@twistedmatrix.com>
2016-01-26 18:02:00 -08:00
Aleksa Sarai 4357ed4a73 *: purge dockerinit from source code
dockerinit has been around for a very long time. It was originally used
as a way for us to do configuration for LXC containers once the
container had started. LXC is no longer supported, and /.dockerinit has
been dead code for quite a while. This removes all code and references
in code to dockerinit.

Signed-off-by: Aleksa Sarai <asarai@suse.com>
2016-01-26 23:47:02 +11:00
Alexander Morozov c38cba3b8c Move long compilations before Go install in Dockerfile
Now we can avoid long compilations on Go update.

Signed-off-by: Alexander Morozov <lk4d4@docker.com>
2016-01-19 22:43:42 -08:00
Aaron Lehmann 588e27f9a5 Vendor updated docker/distribution package
Fixes #19400

Note that this introduces an incompatibility with Docker 1.10-rc1,
because the media type used for schema1 manifests has been corrected in
the upstream distribution code. Docker 1.10-rc1 won't be able to pull
old manifests from Registry 2.3-rc0 and up, but because of this vendor
update, Docker 1.10-rc2 won't have this problem.

Signed-off-by: Aaron Lehmann <aaron.lehmann@docker.com>
2016-01-19 13:28:51 -08:00