Merge ~valentinviennot/ubuntu-docker-images:update-templates-21.04 into ~ubuntu-docker-images/ubuntu-docker-images/+git/templates:main

Proposed by Valentin Viennot
Status: Merged
Merged at revision: fba43a88bcba2362039cb9ed59b97fba51410736
Proposed branch: ~valentinviennot/ubuntu-docker-images:update-templates-21.04
Merge into: ~ubuntu-docker-images/ubuntu-docker-images/+git/templates:main
Diff against target: 5062 lines (+3453/-242)
66 files modified
.devcontainer/Dockerfile (+11/-0)
.devcontainer/devcontainer.json (+45/-0)
Makefile (+35/-0)
README.md (+30/-4)
data/apache2.yaml (+54/-0)
data/bind9.yaml (+42/-0)
data/cassandra.yaml (+64/-0)
data/cortex.yaml (+54/-0)
data/grafana.yaml (+56/-0)
data/memcached.yaml (+82/-0)
data/mysql.yaml (+90/-0)
data/nginx.yaml (+57/-0)
data/postgres.yaml (+84/-0)
data/prometheus-alertmanager.yaml (+50/-0)
data/prometheus.yaml (+53/-0)
data/redis.yaml (+78/-0)
data/squid.yaml (+55/-0)
data/telegraf.yaml (+47/-0)
docs/docker.io/ubuntu/apache2.md (+15/-8)
docs/docker.io/ubuntu/bind9.md (+92/-0)
docs/docker.io/ubuntu/cassandra.md (+96/-0)
docs/docker.io/ubuntu/cortex.md (+15/-8)
docs/docker.io/ubuntu/grafana.md (+17/-10)
docs/docker.io/ubuntu/memcached.md (+15/-8)
docs/docker.io/ubuntu/mysql.md (+18/-11)
docs/docker.io/ubuntu/nginx.md (+15/-8)
docs/docker.io/ubuntu/postgres.md (+16/-9)
docs/docker.io/ubuntu/prometheus-alertmanager.md (+15/-8)
docs/docker.io/ubuntu/prometheus.md (+15/-8)
docs/docker.io/ubuntu/redis.md (+18/-11)
docs/docker.io/ubuntu/squid.md (+94/-0)
docs/docker.io/ubuntu/telegraf.md (+17/-10)
docs/public.ecr.aws/lts/apache2.md (+15/-11)
docs/public.ecr.aws/lts/bind9.md (+93/-0)
docs/public.ecr.aws/lts/cassandra.md (+95/-0)
docs/public.ecr.aws/lts/cortex.md (+14/-10)
docs/public.ecr.aws/lts/grafana.md (+16/-12)
docs/public.ecr.aws/lts/memcached.md (+15/-11)
docs/public.ecr.aws/lts/mysql.md (+18/-14)
docs/public.ecr.aws/lts/nginx.md (+15/-11)
docs/public.ecr.aws/lts/postgres.md (+16/-12)
docs/public.ecr.aws/lts/prometheus-alertmanager.md (+14/-10)
docs/public.ecr.aws/lts/prometheus.md (+14/-10)
docs/public.ecr.aws/lts/redis.md (+17/-13)
docs/public.ecr.aws/lts/squid.md (+94/-0)
docs/public.ecr.aws/lts/telegraf.md (+16/-12)
docs/public.ecr.aws/ubuntu/apache2.md (+97/-0)
docs/public.ecr.aws/ubuntu/bind9.md (+96/-0)
docs/public.ecr.aws/ubuntu/cassandra.md (+92/-0)
docs/public.ecr.aws/ubuntu/cortex.md (+96/-0)
docs/public.ecr.aws/ubuntu/grafana.md (+90/-0)
docs/public.ecr.aws/ubuntu/memcached.md (+126/-0)
docs/public.ecr.aws/ubuntu/mysql.md (+123/-0)
docs/public.ecr.aws/ubuntu/nginx.md (+98/-0)
docs/public.ecr.aws/ubuntu/postgres.md (+122/-0)
docs/public.ecr.aws/ubuntu/prometheus-alertmanager.md (+90/-0)
docs/public.ecr.aws/ubuntu/prometheus.md (+90/-0)
docs/public.ecr.aws/ubuntu/redis.md (+110/-0)
docs/public.ecr.aws/ubuntu/squid.md (+98/-0)
docs/public.ecr.aws/ubuntu/telegraf.md (+89/-0)
templates/README_DOCKERHUB.md (+24/-8)
templates/README_ECR.md (+54/-0)
templates/README_ECR_LTS.md (+55/-0)
templates/channels_message.md (+1/-1)
templates/common_usage.md (+1/-1)
templates/header.md (+4/-3)
Reviewer Review Type Date Requested Status
Athos Ribeiro Approve
Sergio Durigan Junior Approve
Review via email: mp+409006@code.launchpad.net

Commit message

Data files in repository

Description of the change

- Moved data files into the templates repository.
- Update getting started scripting (including quickstart with .devcontainer)
- Update scripting

To post a comment you must log in.
Revision history for this message
Sergio Durigan Junior (sergiodj) wrote :

Thanks for the MP, Valentin. I'm leaving a few comments that should be easy to address; when you do, I think this will be ready to be merged.

Thanks.

review: Needs Fixing
Revision history for this message
Sergio Durigan Junior (sergiodj) wrote :

BTW, once this is merged I will proceed with deleting the documentation bits from each image's repository/branch.

Revision history for this message
Sergio Durigan Junior (sergiodj) wrote :

Thanks, Valentin.

This LGTM now. I will merge it soon.

review: Approve
Revision history for this message
Athos Ribeiro (athos-ribeiro) :
review: Approve

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1diff --git a/.devcontainer/Dockerfile b/.devcontainer/Dockerfile
2new file mode 100644
3index 0000000..35db662
4--- /dev/null
5+++ b/.devcontainer/Dockerfile
6@@ -0,0 +1,11 @@
7+# See here for image contents: https://github.com/microsoft/vscode-dev-containers/tree/v0.148.1/containers/python-3/.devcontainer/base.Dockerfile
8+ARG VARIANT="3"
9+FROM mcr.microsoft.com/vscode/devcontainers/python:0-${VARIANT}
10+
11+RUN apt-get update && export DEBIAN_FRONTEND=noninteractive \
12+ && apt-get -y install --no-install-recommends python3-mako python3-yaml
13+
14+RUN cd /usr/bin && git clone https://github.com/misterw97/RenderDown \
15+ && pip3 --disable-pip-version-check --no-cache-dir install -r /usr/bin/RenderDown/requirements.txt \
16+ && rm -rf /tmp/pip-tmp
17+ENV RENDERDOWN /usr/bin/RenderDown/renderdown.py
18diff --git a/.devcontainer/devcontainer.json b/.devcontainer/devcontainer.json
19new file mode 100644
20index 0000000..2883d91
21--- /dev/null
22+++ b/.devcontainer/devcontainer.json
23@@ -0,0 +1,45 @@
24+{
25+ "name": "Python 3",
26+ "build": {
27+ "dockerfile": "Dockerfile",
28+ "context": "..",
29+ "args": {
30+ // Update 'VARIANT' to pick a Python version: 3, 3.6, 3.7, 3.8, 3.9
31+ "VARIANT": "3",
32+ // Options
33+ "INSTALL_NODE": "true",
34+ "NODE_VERSION": "lts/*"
35+ }
36+ },
37+
38+ // Set *default* container specific settings.json values on container create.
39+ "settings": {
40+ "terminal.integrated.shell.linux": "/bin/bash",
41+ "python.pythonPath": "/usr/local/bin/python",
42+ "python.linting.enabled": true,
43+ "python.linting.pylintEnabled": true,
44+ "python.formatting.autopep8Path": "/usr/local/py-utils/bin/autopep8",
45+ "python.formatting.blackPath": "/usr/local/py-utils/bin/black",
46+ "python.formatting.yapfPath": "/usr/local/py-utils/bin/yapf",
47+ "python.linting.banditPath": "/usr/local/py-utils/bin/bandit",
48+ "python.linting.flake8Path": "/usr/local/py-utils/bin/flake8",
49+ "python.linting.mypyPath": "/usr/local/py-utils/bin/mypy",
50+ "python.linting.pycodestylePath": "/usr/local/py-utils/bin/pycodestyle",
51+ "python.linting.pydocstylePath": "/usr/local/py-utils/bin/pydocstyle",
52+ "python.linting.pylintPath": "/usr/local/py-utils/bin/pylint"
53+ },
54+
55+ // Add the IDs of extensions you want installed when the container is created.
56+ "extensions": [
57+ "ms-python.python"
58+ ],
59+
60+ // Use 'forwardPorts' to make a list of ports inside the container available locally.
61+ // "forwardPorts": [],
62+
63+ // Use 'postCreateCommand' to run commands after the container is created.
64+ // "postCreateCommand": "pip3 install --user -r requirements.txt",
65+
66+ // Comment out connect as root instead. More info: https://aka.ms/vscode-remote/containers/non-root.
67+ "remoteUser": "vscode"
68+}
69diff --git a/Makefile b/Makefile
70new file mode 100644
71index 0000000..a179a07
72--- /dev/null
73+++ b/Makefile
74@@ -0,0 +1,35 @@
75+RENDERDOWN ?= ../RenderDown/renderdown.py
76+PYTHON ?= python3
77+BUILDDIR ?= docs
78+DATADIR ?= data
79+
80+NS_DOCKERHUB = docker.io/ubuntu
81+NS_ECR = public.ecr.aws/ubuntu
82+NS_ECR_LTS = public.ecr.aws/lts
83+
84+README_TEMPLATE_DOCKERHUB = templates/README_DOCKERHUB.md
85+README_TEMPLATE_ECR = templates/README_ECR.md
86+README_TEMPLATE_ECR_LTS = templates/README_ECR_LTS.md
87+
88+all: all-doc
89+
90+all-doc: clean-doc dockerhub-docs ecr-docs ecr-lts-docs
91+
92+dockerhub-docs:
93+ mkdir -p $(BUILDDIR)/$(NS_DOCKERHUB)
94+ $(PYTHON) $(RENDERDOWN) $(README_TEMPLATE_DOCKERHUB) --outdir $(BUILDDIR)/$(NS_DOCKERHUB) --data $(DATADIR)
95+
96+ecr-docs:
97+ mkdir -p $(BUILDDIR)/$(NS_ECR)
98+ $(PYTHON) $(RENDERDOWN) $(README_TEMPLATE_ECR) --outdir $(BUILDDIR)/$(NS_ECR) --data $(DATADIR)
99+
100+ecr-lts-docs:
101+ mkdir -p $(BUILDDIR)/$(NS_ECR_LTS)
102+ $(PYTHON) $(RENDERDOWN) $(README_TEMPLATE_ECR_LTS) --outdir $(BUILDDIR)/$(NS_ECR_LTS) --data $(DATADIR)
103+
104+clean: clean-doc
105+
106+clean-doc:
107+ rm -rf $(BUILDDIR)
108+
109+.PHONY: clean clean-doc all all-doc dockerhub-docs ecr-docs ecr-lts-docs
110diff --git a/README.md b/README.md
111index 1803ada..0166dea 100644
112--- a/README.md
113+++ b/README.md
114@@ -2,10 +2,36 @@
115
116 This is where we store the template files for each OCI image.
117
118-# Installing
119+## Installing
120
121+### DevContainer
122+
123+This repository contains a `.devcontainer` config folder to allow isolated-environment-controlled execution with [VScode](https://code.visualstudio.com/docs/remote/containers).
124+
125+The DevContainer will provide you with a working environment out of the box. **You don't need any configuration.**
126+
127+### Manually
128+
129+```bash
130+git clone https://github.com/misterw97/RenderDown
131+sudo apt update && sudo apt install -y python3-mako python3-yaml
132 ```
133-$ git clone https://github.com/misterw97/RenderDown
134-$ sudo apt install -y python3-mako python3-yaml
135-$ python3 ./RenderDown/renderdown.py templates/README_DOCKERHUB.md --outdir out --data ./data
136+
137+## Running
138+
139+Create README files for all registries and namespaces:
140+
141+```bash
142+make
143 ```
144+
145+Create a README file for a specific registry/namespace combination:
146+
147+```bash
148+make dockerhub-docs
149+make ecr-docs
150+make ecr-lts-docs
151+```
152+
153+The documentation will be available under `docs`, respecting the image
154+registry/namespace format.
155diff --git a/data/apache2.yaml b/data/apache2.yaml
156new file mode 100644
157index 0000000..8ae01f1
158--- /dev/null
159+++ b/data/apache2.yaml
160@@ -0,0 +1,54 @@
161+application: Apache2
162+repo: apache2
163+description: >
164+ The Apache HTTP Server Project's goal is to build a secure, efficient and extensible HTTP server as standards-compliant open source software. The result has long been the number one web server on the Internet. Read more on the [apache2 website](https://httpd.apache.org/).
165+releases:
166+ - track: '2.4'
167+ risk: beta
168+ base: 21.04
169+ architectures:
170+ - amd64
171+ - arm64
172+ - ppc64el
173+ - s390x
174+ - track: '2.4'
175+ risk: beta
176+ version: '2.4.41'
177+ base: 20.04
178+ type: LTS
179+ architectures:
180+ - amd64
181+ - arm64
182+ - ppc64el
183+ - s390x
184+docker:
185+ parameters:
186+ - -p 8080:80
187+ access: Access your Apache2 server at `http://localhost:8080`.
188+parameters:
189+ - type: -e
190+ value: TZ=UTC
191+ description: Timezone.
192+ - type: -p
193+ value: 8080:80
194+ description: Expose Apache2 on `localhost:8080`.
195+ - type: -v
196+ value: /local/path/to/website:/var/www/html
197+ description: Mount and serve a local website.
198+ - type: -v
199+ value: /path/to/apache2.conf:/etc/apache2/apache2.conf
200+ description: Local [configuration file](https://httpd.apache.org/docs/2.4/) `apache2.conf` (try [this example](https://git.launchpad.net/~canonical-server/ubuntu-docker-images/+git/apache2/plain/examples/config/apache2.conf)).
201+debug:
202+ - nothing
203+microk8s:
204+ configmap:
205+ files:
206+ - key: apache2
207+ name: apache2.conf
208+ link: https://git.launchpad.net/~canonical-server/ubuntu-docker-images/+git/apache2/plain/examples/config/apache2.conf
209+ - key: apache2-site
210+ name: index.html
211+ link: https://git.launchpad.net/~canonical-server/ubuntu-docker-images/+git/apache2/plain/examples/config/html/index.html
212+ deploy:
213+ link: https://git.launchpad.net/~canonical-server/ubuntu-docker-images/+git/apache2/plain/examples/apache2-deployment.yml
214+ access: You will now be able to connect to the apache2 server on `http://localhost:30080`.
215diff --git a/data/bind9.yaml b/data/bind9.yaml
216new file mode 100644
217index 0000000..82013ab
218--- /dev/null
219+++ b/data/bind9.yaml
220@@ -0,0 +1,42 @@
221+application: Bind9
222+repo: bind9
223+description: >
224+ BIND 9 provides software for Domain Name System (DNS) management including both defining domain names authoritatively for a given DNS zone, and recursively resolving domain names to their IP addresses.
225+ In addition to BIND 9's DNS server itself, `named`, this container also includes tools for performing DNS queries and dynamic updates.
226+ Read more on the [BIND 9 website](https://www.isc.org/bind/).
227+releases:
228+ - track: '9.16.15'
229+ risk: beta
230+ base: '20.04'
231+ type: LTS
232+ architectures:
233+ - amd64
234+ - arm64
235+ - ppc64el
236+ - s390x
237+docker:
238+ parameters:
239+ - -p 30053:53
240+ access: Access your Bind9 server at `localhost:30053`
241+parameters:
242+ - type: -e
243+ value: TZ=UTC
244+ description: Timezone.
245+ - type: -p
246+ value: 30053:53
247+ description: Expose bind9 on `localhost:30053`.
248+ - type: -v
249+ value: /path/to/bind/configuration:/etc/bind/named.conf
250+ description: Local [configuration file](https://bind9.readthedocs.io/en/latest/reference.html) `named.conf` (try [this example](https://git.launchpad.net/~canonical-server/ubuntu-docker-images/+git/bind9/plain/examples/caching-nameserver/named.conf.options)).
251+ - type: -v
252+ value: /path/to/cached/data:/var/cache/bind
253+ description: Location where locally cached data can be dumped.
254+ - type: -v
255+ value: /path/to/resource/records:/var/lib/bind
256+ description: Location of Resource Records defining various domain information.
257+debug:
258+ - nothing
259+microk8s:
260+ deploy:
261+ link: https://git.launchpad.net/~canonical-server/ubuntu-docker-images/+git/bind9/plain/examples/bind9-deployment.yml
262+ access: You will now be able to connect to the Bind9 server on localhost:30053`.
263\ No newline at end of file
264diff --git a/data/cassandra.yaml b/data/cassandra.yaml
265new file mode 100644
266index 0000000..56ae5c2
267--- /dev/null
268+++ b/data/cassandra.yaml
269@@ -0,0 +1,64 @@
270+application: Cassandra
271+repo: cassandra
272+description: >
273+ Apache Cassandra is an open source NoSQL distributed database trusted by
274+ thousands of companies for scalability and high availability without
275+ compromising performance. Linear scalability and proven fault-tolerance on
276+ commodity hardware or cloud infrastructure make it a good platform for
277+ mission-critical data.
278+releases:
279+ - track: "4.0"
280+ risk: beta
281+ base: '21.04'
282+ architectures:
283+ - amd64
284+ - arm64
285+ - ppc64el
286+ - s390x
287+ - track: "4.0"
288+ risk: beta
289+ base: '20.04'
290+ architectures:
291+ - amd64
292+ - arm64
293+ - ppc64el
294+ - s390x
295+docker:
296+ parameters:
297+ - -p 7000:7000
298+ - -p 7001:7001
299+ - -p 7199:7199
300+ - -p 9042:9042
301+ - -p 9160:9160
302+ access: Access your Cassandra server with `cqlsh localhost 9042`.
303+parameters:
304+ - type: -e
305+ value: TZ=UTC
306+ description: Timezone.
307+ - type: -p
308+ value: 7000:7000
309+ description: Expose itra-node communication
310+ - type: -p
311+ value: 7001:7001
312+ description: Expose TLS itra-node communication
313+ - type: -p
314+ value: 7199:7199
315+ description: Expose JMX
316+ - type: -p
317+ value: 9042:9042
318+ description: Expose CQL
319+ - type: -p
320+ value: 9160:9160
321+ description: Expose thrift service
322+ - type: -v
323+ value: /local/path/to/data:/var/lib/cassandra
324+ description: Volume to store Cassandra data
325+ - type: -v
326+ value: /path/to/logs:/var/log/cassandra
327+ description: Volume to store cassandra logs
328+debug:
329+ - nothing
330+microk8s:
331+ deploy:
332+ link: https://git.launchpad.net/~canonical-server/ubuntu-docker-images/+git/cassandra/plain/examples/cassandra-deployment.yml
333+ access: You can now access the cassandra server on port 9042 (e.g., cqlsh localhost 9042)
334diff --git a/data/cortex.yaml b/data/cortex.yaml
335new file mode 100644
336index 0000000..b39bdfe
337--- /dev/null
338+++ b/data/cortex.yaml
339@@ -0,0 +1,54 @@
340+application: Cortex
341+repo: cortex
342+description: |
343+ Cortex provides horizontally scalable, highly available, multi-tenant, long term storage for Prometheus.
344+
345+ * Horizontally scalable: Cortex can run across multiple machines in a cluster, exceeding the throughput and storage of a single machine. This enables you to send the metrics from multiple Prometheus servers to a single Cortex cluster and run "globally aggregated" queries across all data in a single place.
346+ * Highly available: When run in a cluster, Cortex can replicate data between machines. This allows you to survive machine failure without gaps in your graphs.
347+ * Multi-tenant: Cortex can isolate data and queries from multiple different independent Prometheus sources in a single cluster, allowing untrusted parties to share the same cluster.
348+ * Long term storage: Cortex supports Amazon DynamoDB, Google Bigtable, Cassandra, S3, GCS and Microsoft Azure for long term storage of metric data. This allows you to durably store data for longer than the lifetime of any single machine, and use this data for long term capacity planning.
349+
350+ Read more on the [Cortex website](https://cortexmetrics.io/).
351+releases:
352+ - track: 1.7
353+ risk: beta
354+ base: 21.04
355+ architectures:
356+ - amd64
357+ - arm64
358+ - ppc64el
359+ - s390x
360+ - track: 1.4
361+ risk: beta
362+ version: '1.4.0'
363+ base: 20.04
364+ architectures:
365+ - amd64
366+ - arm64
367+ - ppc64el
368+ - s390x
369+docker:
370+ parameters:
371+ - -p 32709:9009
372+ access: Access your Cortex server at `http://localhost:32709`.
373+parameters:
374+ - type: -e
375+ value: TZ=UTC
376+ description: Timezone.
377+ - type: -p
378+ value: 32709:9009
379+ description: Expose Cortex on `localhost:32709`.
380+ - type: -v
381+ value: /my/local/cortex.yaml:/etc/cortex/cortex.yaml
382+ description: Local [configuration file](https://cortexmetrics.io/docs/configuration/) `cortex.yaml` (try [this example](https://git.launchpad.net/~canonical-server/ubuntu-docker-images/+git/cortex/plain/oci/examples/config/cortex.yaml)).
383+debug:
384+ - nothing
385+microk8s:
386+ configmap:
387+ files:
388+ - key: main-config
389+ name: cortex.yaml
390+ link: https://git.launchpad.net/~canonical-server/ubuntu-docker-images/+git/cortex/plain/oci/examples/config/cortex.yaml
391+ deploy:
392+ link: https://git.launchpad.net/~canonical-server/ubuntu-docker-images/+git/cortex/plain/oci/examples/cortex-deployment.yml
393+ access: You will now be able to connect to the Cortex server on `localhost:32709`.
394diff --git a/data/grafana.yaml b/data/grafana.yaml
395new file mode 100644
396index 0000000..9a2beec
397--- /dev/null
398+++ b/data/grafana.yaml
399@@ -0,0 +1,56 @@
400+application: Grafana™ software
401+repo: grafana
402+description: >
403+ Grafana is a feature rich metrics dashboard and graph editor for Cloudwatch, Elasticsearch, Graphite, InfluxDB, OpenTSB, Prometheus, and Hosted Metrics.
404+ Read more on the [Grafana website](https://grafana.com/docs/).
405+releases:
406+ - track: 7.4
407+ risk: beta
408+ base: 21.04
409+ architectures:
410+ - amd64
411+ - arm64
412+ - ppc64el
413+ - s390x
414+ - track: 7.2
415+ risk: beta
416+ version: '7.2.0'
417+ base: 20.04
418+ architectures:
419+ - amd64
420+ - arm64
421+ - ppc64el
422+ - s390x
423+docker:
424+ parameters:
425+ - -p 30000:3000
426+ access: Access your Grafana server at `localhost:30000`.
427+parameters:
428+ - type: -e
429+ value: TZ=UTC
430+ description: Timezone.
431+ - type: -p
432+ value: 30000:3000
433+ description: Expose Grafana on `localhost:30000`.
434+ - type: -v
435+ value: /path/to/grafana/provisioning/files/:/etc/grafana/provisioning/
436+ description: Pass a directory with files to provision a Grafana `datasource` and `dashboard` (see [documentation](https://grafana.com/docs/grafana/latest/administration/provisioning/)).
437+ - type: -v
438+ value: /path/to/persisted/data:/var/lib/grafana
439+ description: Persist data with a voulme instead of initializing a new database for each newly launched container.
440+debug: None
441+microk8s:
442+ deploy:
443+ link: https://git.launchpad.net/~canonical-server/ubuntu-docker-images/+git/grafana/plain/examples/grafana-deployment.yml
444+ access: You will now be able to connect to the Grafana on `http://localhost:30000`.
445+ configmap:
446+ files:
447+ - key: grafana-datasource
448+ name: datasource.yml
449+ link: https://git.launchpad.net/~canonical-server/ubuntu-docker-images/+git/grafana/plain/examples/config/datasource.yml
450+ - key: grafana-dashboard-definition
451+ name: dashboard.yml
452+ link: https://git.launchpad.net/~canonical-server/ubuntu-docker-images/+git/grafana/plain/examples/config/dashboard.yml
453+ - key: grafana-dashboard
454+ name: system-stats-dashboard.json
455+ link: https://git.launchpad.net/~canonical-server/ubuntu-docker-images/+git/grafana/plain/examples/config/system-stats-dashboard.json
456diff --git a/data/memcached.yaml b/data/memcached.yaml
457new file mode 100644
458index 0000000..0a086b8
459--- /dev/null
460+++ b/data/memcached.yaml
461@@ -0,0 +1,82 @@
462+application: Memcached
463+repo: memcached
464+description: >
465+ Memcached is an in-memory key-value store for small chunks of arbitrary data (strings, objects) from results of database calls, API calls, or page rendering. It is a short-term memory for applications.
466+ Memcached allows to take memory from parts of a system where you have more than you need and make it accessible to areas where you have less than you need. Read more on the [memcached website](https://memcached.org/).
467+releases:
468+ - track: 1.6
469+ risk: beta
470+ base: 21.04
471+ architectures:
472+ - amd64
473+ - arm64
474+ - ppc64el
475+ - s390x
476+ - track: 1.5
477+ risk: beta
478+ version: 1.5.22
479+ base: 20.04
480+ type: LTS
481+ architectures:
482+ - amd64
483+ - arm64
484+ - ppc64el
485+ - s390x
486+docker:
487+ nothing:
488+parameters:
489+ - type: -e
490+ value: TZ=UTC
491+ description: Timezone.
492+ - type: -e
493+ value: MEMCACHED_CACHE_SIZE=64MB
494+ description: Determines the size of the cache.
495+ - type: -e
496+ value: MEMCACHED_MAX_CONNECTIONS=1024
497+ description: Determines the maximum number of concurrent connections.
498+ - type: -e
499+ value: MEMCACHED_THREADS=4
500+ description: Determines the number of threads to process requests.
501+ - type: -e
502+ value: MEMCACHED_PASSWORD
503+ description: Define the password for the `root` user if another username is provided. By default the authentication is disabled but if this option is passed it becomes enabled.
504+ - type: -e
505+ value: MEMCACHED_USERNAME
506+ description: Define a new user. If this option is passed a password is needed to authenticate the new user.
507+ - type: -p
508+ value: 11211
509+ description: Memcached is exposed inside the container on port `11211`.
510+debug:
511+ text: |
512+ <details>
513+ <summary>You can access the Memcached instance with telnet from another container (click to expand).</summary>
514+
515+ ```sh
516+ # Create a dedicated network
517+ $ docker network create memcached-network
518+ # Connect the main container to it
519+ $ docker network connect memcached-network memcached-container
520+ # Run an interactive container with the latest Ubuntu
521+ $ docker run -it --rm --name telnet --network memcached-network ubuntu bash
522+ # Install the telnet cli from within the container
523+ > apt update && apt install telnet -y
524+ # Connect to the memcached instance using telnet
525+ > telnet memcached-container 11211
526+ Trying 172.30.0.2...
527+ Connected to memcached.
528+ Escape character is '^]'.
529+ ```
530+ From there you can run `memcached` commands, as documented in [their wiki](https://github.com/memcached/memcached/wiki/Commands).
531+
532+ </details>
533+
534+ ```sh
535+ $ telnet memcached-container 11211
536+ ```
537+
538+ There are cases where one might want to pass some memcached command line flags that are not configurable via environment variables.
539+ In this case you can append the flags themselves or a shell script to the run command.
540+microk8s:
541+ deploy:
542+ link: https://git.launchpad.net/~canonical-server/ubuntu-docker-images/+git/memcached/plain/examples/memcached-deployment.yml
543+ access: Memcached will be listening on port `31211` in your host.
544diff --git a/data/mysql.yaml b/data/mysql.yaml
545new file mode 100644
546index 0000000..c2b73d0
547--- /dev/null
548+++ b/data/mysql.yaml
549@@ -0,0 +1,90 @@
550+application: MySQL™
551+repo: mysql
552+description: >
553+ MySQL is a fast, stable and true multi-user, multi-threaded SQL database
554+ server. SQL (Structured Query Language) is the most popular database query
555+ language in the world. The main goals of MySQL are speed, robustness and ease
556+ of use. Read more on the [MySQL website](https://dev.mysql.com/doc/refman/8.0/en/).
557+releases:
558+ - track: '8.0'
559+ risk: beta
560+ base: 21.04
561+ architectures:
562+ - amd64
563+ - arm64
564+ - s390x
565+ - track: '8.0'
566+ risk: beta
567+ version: 8.0.22
568+ base: 20.04
569+ type: LTS
570+ architectures:
571+ - amd64
572+ - arm64
573+ - s390x
574+docker:
575+ parameters:
576+ - -p 30306:3306
577+ - -e MYSQL_ROOT_PASSWORD=My:S3cr3t/
578+ access: Access your MySQL server at `localhost:30306`.
579+parameters:
580+ - type: -e
581+ value: TZ=UTC
582+ description: Timezone.
583+ - type: -e
584+ value: MYSQL_ROOT_PASSWORD=secret_for_root
585+ description: Set the password for the `root` user. This option is **mandatory** and **must not be empty**.
586+ - type: -e
587+ value: MYSQL_PASSWORD=secret
588+ description: Set the password for the `MYSQL_USER` user.
589+ - type: -e
590+ value: MYSQL_USER=john
591+ description: Create a new user with superuser privileges. This is used in conjunction with `MYSQL_PASSWORD`.
592+ - type: -e
593+ value: MYSQL_DATABASE=db_test
594+ description: Set the name of the default database.
595+ - type: -e
596+ value: MYSQL_ALLOW_EMPTY_PASSWORD=yes
597+ description: Set up a blank password for the `root` user. **This is not recommended to be used in production, make sure you know what you are doing**.
598+ - type: -e
599+ value: MYSQL_RANDOM_ROOT_PASSWORD=yes
600+ description: Generate a random initial password for the `root` user using `pwgen`. It will be printed in the logs, search for `GENERATED ROOT PASSWORD`.
601+ - type: -e
602+ value: MYSQL_ONETIME_PASSWORD=yes
603+ description: Set `root` user as experide once initialization is complete, forcing a password change on first login.
604+ - type: -e
605+ value: MYSQL_INITSB_SKIP_TZINFO=yes
606+ description: Timezone data is automatically loaded via entrypoint script, set this variable to any non-empty value to disable it.
607+ - type: -p
608+ value: 30306:3306
609+ description: Expose MySQL server on `localhost:30306`.
610+ - type: -v
611+ value: /path/to/data:/var/lib/mysql
612+ description: Persist data instead of initializing a new database every time you launch a new container.
613+ - type: -v
614+ value: /path/to/config/files/:/etc/mysql/mysql.conf.d/
615+ description: Local [configuration files](https://dev.mysql.com/doc/refman/8.0/en/mysql-command-options.html) (try this [example my.cnf](https://git.launchpad.net/~canonical-server/ubuntu-docker-images/+git/mysql/plain/examples/config/my.cnf)).
616+debug:
617+ extraparagraph: |
618+ #### Initialization Scripts
619+
620+ One can also add initialization scripts to their containers. This includes `*.sql`, `.sql.gz`, and `*.sh` scripts, and you just need to put them inside the `/docker-entrypoint-initdb.d` directory inside the container. After MySQL initialization is done and the default database and user are created, the scripts are executed in the following order:
621+
622+ * Run any `*.sql` files in alphabetically order. By default the target database is specified via `MYSQL_DATABASE`.
623+ * Run any executable `*.sh` scripts in alphabetically order.
624+ * Source any non-executable `*.sh` scripts in alphabetically order.
625+
626+ All of this is done before the MySQL service is started. Keep in mind if your database directory is not empty (contains pre-existing database) they will be left untouched.
627+ network:
628+ client: mysql
629+ args: -hmysql-container -uroot -p
630+ helper: The password will be asked and you can enter `My:S3cr3t/`. Now, you are logged in and can enjoy your new instance.
631+microk8s:
632+ configmap:
633+ files:
634+ - key: main-config
635+ name: my-custom.cnf
636+ link: https://git.launchpad.net/~canonical-server/ubuntu-docker-images/+git/mysql/plain/examples/config/my-custom.cnf
637+ deploy:
638+ link: https://git.launchpad.net/~canonical-server/ubuntu-docker-images/+git/mysql/plain/examples/mysql-deployment.yml
639+ access: You will now be able to connect to the MySQL server on `localhost:30306`.
640diff --git a/data/nginx.yaml b/data/nginx.yaml
641new file mode 100644
642index 0000000..05796e3
643--- /dev/null
644+++ b/data/nginx.yaml
645@@ -0,0 +1,57 @@
646+application: Nginx
647+repo: nginx
648+description: >
649+ Nginx ("engine X") is a high-performance web and reverse proxy server created by Igor Sysoev. It can be used both as a standalone web server and as a proxy to reduce the load on back-end HTTP or mail servers. Read more on the [nginx website](https://www.nginx.com/).
650+releases:
651+ - track: 1.18
652+ risk: beta
653+ base: 21.04
654+ architectures:
655+ - amd64
656+ - arm64
657+ - ppc64el
658+ - s390x
659+ - track: 1.18
660+ risk: beta
661+ version: '1.18.0'
662+ base: 20.04
663+ type: LTS
664+ architectures:
665+ - amd64
666+ - arm64
667+ - ppc64el
668+ - s390x
669+docker:
670+ parameters:
671+ - -p 8080:80
672+ access: Access your Nginx server at `http://localhost:8080`.
673+parameters:
674+ - type: -e
675+ value: TZ=UTC
676+ description: Timezone.
677+ - type: -p
678+ value: 8080:80
679+ description: Expose Nginx on `localhost:8080`.
680+ - type: -v
681+ value: /local/path/to/website:/var/www/html
682+ description: Mount and serve a local website.
683+ - type: -v
684+ value: /path/to/conf.template:/etc/nginx/templates/conf.template
685+ description: Mount template files inside `/etc/nginx/templates`. They will be processed and the results will be placed at `/etc/nginx/conf.d`. (e.g. `listen ${NGINX_PORT};` will generate `listen 80;`).
686+ - type: -v
687+ value: /path/to/nginx.conf:/etc/nginx/nginx.conf
688+ description: Local [configuration file](https://nginx.org/en/docs/) `nginx.conf` (try [this example](https://git.launchpad.net/~canonical-server/ubuntu-docker-images/+git/nginx/plain/examples/config/nginx.conf)).
689+debug:
690+ - nothing
691+microk8s:
692+ configmap:
693+ files:
694+ - key: nginx
695+ name: nginx.conf
696+ link: https://git.launchpad.net/~canonical-server/ubuntu-docker-images/+git/nginx/plain/examples/config/nginx.conf
697+ - key: nginx-site
698+ name: index.html
699+ link: https://git.launchpad.net/~canonical-server/ubuntu-docker-images/+git/nginx/plain/examples/config/html/index.html
700+ deploy:
701+ link: https://git.launchpad.net/~canonical-server/ubuntu-docker-images/+git/nginx/plain/examples/nginx-deployment.yml
702+ access: You will now be able to connect to the nginx server on `http://localhost:31080`.
703diff --git a/data/postgres.yaml b/data/postgres.yaml
704new file mode 100644
705index 0000000..96cb169
706--- /dev/null
707+++ b/data/postgres.yaml
708@@ -0,0 +1,84 @@
709+application: Postgres
710+repo: postgres
711+description: >
712+ PostgreSQL is a powerful, open source object-relational database system. It is fully ACID compliant, has full support for foreign keys, joins, views, triggers, and stored procedures (in multiple languages). It includes most SQL:2008 data types, including INTEGER, NUMERIC, BOOLEAN, CHAR, VARCHAR, DATE, INTERVAL, and TIMESTAMP. It also supports storage of binary large objects, including pictures, sounds, or video. It has native programming interfaces for C/C++, Java, .Net, Perl, Python, Ruby, Tcl, ODBC, among others, and exceptional documentation. Read more on the [PostgreSQL website](https://www.postgresql.org/docs/).
713+releases:
714+ - track: 13.1
715+ risk: beta
716+ base: 21.04
717+ architectures:
718+ - amd64
719+ - arm64
720+ - s390x
721+ - track: 12.4
722+ risk: beta
723+ version: 12.4
724+ base: 20.04
725+ type: LTS
726+ architectures:
727+ - amd64
728+ - arm64
729+ - s390x
730+docker:
731+ parameters:
732+ - -p 30432:5432
733+ - -e POSTGRES_PASSWORD=My:s3Cr3t/
734+ access: Access your PostgreSQL server at `localhost:30432`.
735+parameters:
736+ - type: -e
737+ value: TZ=UTC
738+ description: Timezone.
739+ - type: -e
740+ value: POSTGRES_PASSWORD=secret
741+ description: Set the password for the superuser which is `postgres` by default. Bear in mind that to connect to the database in the same host the password is not needed but to access it via an external host (for instance another container) the password is needed. This option is **mandatory** and **must not be empty**.
742+ - type: -e
743+ value: POSTGRES_USER=john
744+ description: Create a new user with superuser privileges. This is used in conjunction with `POSTGRES_PASSWORD`.
745+ - type: -e
746+ value: POSTGRES_DB=db_test
747+ description: Set the name of the default database.
748+ - type: -e
749+ value: POSTGRES_INITDB_ARGS="--data-checksums"
750+ description: Pass arguments to the `postgres initdb` call.
751+ - type: -e
752+ value: POSTGRES_INITDB_WALDIR=/path/to/location
753+ description: Set the location of the Postgres transaction log. By default it is stored in a subdirectory of the main Postgres data folder (`PGDATA`).
754+ - type: -e
755+ value: POSTGRES_HOST_AUTH_METHOD=trust
756+ description: "Set the `auth-method` for `host` connections for `all` databases, `all` users, and `all` addresses. The following will be added to the `pg_hba.conf` if this option is passed: `host all all all $POSTGRES_HOST_AUTH_METHOD`."
757+ - type: -e
758+ value: PGDATA=/path/to/location
759+ description: Set the location of the database files. The default is `/var/lib/postgresql/data`.
760+ - type: -p
761+ value: 30432:5432
762+ description: Expose Postgres on `localhost:30432`.
763+ - type: -v
764+ value: /path/to/postgresql.conf:/etc/postgresql/postgresql.conf
765+ description: Local [configuration file](https://www.postgresql.org/docs/12/index.html) `postgresql.conf` (try [this example](https://git.launchpad.net/~canonical-server/ubuntu-docker-images/+git/postgresql/plain/examples/config/postgresql.conf)).
766+ - type: -v
767+ value: /path/to/persisted/data:/var/lib/postgresql/data
768+ description: Persist data instead of initializing a new database every time you launch a new container.
769+debug:
770+ extraparagraph: |
771+ #### Initialization Scripts
772+
773+ One can also add initialization scripts to their containers. This includes `*.sql`, `.sql.gz`, and `*.sh` scripts, and you just need to put them inside the `/docker-entrypoint-initdb.d` directory inside the container. After Postgres initialization is done and the default database and user are created, the scripts are executed in the following order:
774+
775+ * Run any `*.sql` files in alphabetically order. It will be executed with `POSTGRES_USER`.
776+ * Run any executable `*.sh` scripts in alphabetically order.
777+ * Source any non-executable `*.sh` scripts in alphabetically order.
778+
779+ All of this is done before the Postgres service is started. Keep in mind if your `PGDATA` directory is not empty (contains pre-existing database) they will be left untouched.
780+ network:
781+ client: psql
782+ args: -h postgres-container -U postgres
783+ helper: The password will be asked and you can enter `My:s3Cr3t/`. Now, you are logged in and can enjoy your new instance.
784+microk8s:
785+ configmap:
786+ files:
787+ - key: main-config
788+ name: postgresql.conf
789+ link: https://git.launchpad.net/~canonical-server/ubuntu-docker-images/+git/postgresql/plain/examples/config/postgresql.conf
790+ deploy:
791+ link: https://git.launchpad.net/~canonical-server/ubuntu-docker-images/+git/postgresql/plain/examples/postgres-deployment.yml
792+ access: You will now be able to connect to the Postgres server on `localhost:30306`.
793diff --git a/data/prometheus-alertmanager.yaml b/data/prometheus-alertmanager.yaml
794new file mode 100644
795index 0000000..4168597
796--- /dev/null
797+++ b/data/prometheus-alertmanager.yaml
798@@ -0,0 +1,50 @@
799+application: Prometheus Alertmanager
800+repo: prometheus-alertmanager
801+description: >
802+ The Alertmanager handles alerts sent by client applications such as the Prometheus server. It takes care of deduplicating, grouping, and routing them to the correct receiver integration such as email, PagerDuty, or OpsGenie. It also takes care of silencing and inhibition of alerts. Read more on the [Prometheus Alertmanager website](https://prometheus.io/docs/alerting/latest/alertmanager/).
803+releases:
804+ - track: '0.21'
805+ risk: beta
806+ base: 21.04
807+ architectures:
808+ - amd64
809+ - arm64
810+ - ppc64el
811+ - s390x
812+ - track: '0.21'
813+ risk: beta
814+ version: 0.21.0
815+ base: 20.04
816+ architectures:
817+ - amd64
818+ - arm64
819+ - ppc64el
820+ - s390x
821+docker:
822+ parameters:
823+ - -p 30093:9093
824+ access: Access your Prometheus Alertmanager server at `localhost:30093`.
825+parameters:
826+ - type: -e
827+ value: TZ=UTC
828+ description: Timezone.
829+ - type: -p
830+ value: 30093:9093
831+ description: Expose Prometheus Alertmanager on `localhost:30093`.
832+ - type: -v
833+ value: /path/to/alertmanager.yml:/etc/prometheus/alertmanager.yml
834+ description: Local [configuration file](https://www.prometheus.io/docs/alerting/latest/configuration/) `alertmanager.yml` (try [this example](https://git.launchpad.net/~canonical-server/ubuntu-docker-images/+git/prometheus-alertmanager/plain/oci/examples/config/alertmanager.yml)).
835+ - type: -v
836+ value: /path/to/persisted/data:/alertmanager
837+ description: "Persist data instead of initializing a new database for each newly launched container. **Important note**: the directory you will be using to persist the data needs to belong to `nogroup:nobody`. You can run `chown nogroup:nobody <path_to_persist_data>` before launching your container."
838+debug:
839+ - nothing
840+microk8s:
841+ configmap:
842+ files:
843+ - key: alertmanager
844+ name: alertmanager.yml
845+ link: https://git.launchpad.net/~canonical-server/ubuntu-docker-images/+git/prometheus-alertmanager/plain/oci/examples/config/alertmanager.yml
846+ deploy:
847+ link: https://git.launchpad.net/~canonical-server/ubuntu-docker-images/+git/prometheus-alertmanager/plain/oci/examples/alertmanager-deployment.yml
848+ access: You will now be able to connect to the Prometheus Alertmanager server on `localhost:30093`.
849diff --git a/data/prometheus.yaml b/data/prometheus.yaml
850new file mode 100644
851index 0000000..ca196f3
852--- /dev/null
853+++ b/data/prometheus.yaml
854@@ -0,0 +1,53 @@
855+application: Prometheus
856+repo: prometheus
857+description: >
858+ Prometheus is a systems and service monitoring system. It collects metrics from configured targets at given intervals, evaluates rule expressions, displays the results, and can trigger alerts if some condition is observed to be true. Read more on the [Prometheus website](https://prometheus.io/).
859+releases:
860+ - track: '2.25'
861+ risk: beta
862+ base: 21.04
863+ architectures:
864+ - amd64
865+ - arm64
866+ - ppc64el
867+ - s390x
868+ - track: '2.20'
869+ risk: beta
870+ version: '2.20.1'
871+ base: 20.04
872+ architectures:
873+ - amd64
874+ - arm64
875+ - ppc64el
876+ - s390x
877+docker:
878+ parameters:
879+ - -p 30090:9090
880+ access: Access your Prometheus server at `localhost:30090`.
881+parameters:
882+ - type: -e
883+ value: TZ=UTC
884+ description: Timezone.
885+ - type: -p
886+ value: 30090:9090
887+ description: Expose Prometheus server on `localhost:30090`.
888+ - type: -v
889+ value: /path/to/prometheus.yml:/etc/prometheus/prometheus.yml
890+ description: Local [configuration file](https://prometheus.io/docs/prometheus/2.20/configuration/configuration/) `prometheus.yml` (try [this example](https://git.launchpad.net/~canonical-server/ubuntu-docker-images/+git/prometheus/plain/oci/examples/config/prometheus.yml)).
891+ - type: -v
892+ value: /path/to/alerts.yml:/etc/prometheus/alerts.yml
893+ description: Local [alert configuration file](https://prometheus.io/docs/prometheus/2.20/configuration/configuration/) `alerts.yml` (try [this example](https://git.launchpad.net/~canonical-server/ubuntu-docker-images/+git/prometheus/plain/oci/examples/config/alerts.yml)).
894+debug:
895+ - nothing
896+microk8s:
897+ configmap:
898+ files:
899+ - key: prometheus
900+ name: prometheus.yml
901+ link: https://git.launchpad.net/~canonical-server/ubuntu-docker-images/+git/prometheus/plain/oci/examples/config/prometheus.yml
902+ - key: prometheus-alerts
903+ name: alerts.yml
904+ link: https://git.launchpad.net/~canonical-server/ubuntu-docker-images/+git/prometheus/plain/oci/examples/config/alerts.yml
905+ deploy:
906+ link: https://git.launchpad.net/~canonical-server/ubuntu-docker-images/+git/prometheus/plain/oci/examples/prometheus-deployment.yml
907+ access: You will now be able to connect to the Prometheus on `http://localhost:30090`.
908diff --git a/data/redis.yaml b/data/redis.yaml
909new file mode 100644
910index 0000000..e862bae
911--- /dev/null
912+++ b/data/redis.yaml
913@@ -0,0 +1,78 @@
914+application: Redis™ software
915+repo: redis
916+description: >
917+ Redis is an open source (BSD licensed), in-memory data structure store, used as a database, cache and message broker.
918+ It supports data structures such as strings, hashes, lists, sets, sorted sets with range queries, bitmaps, hyperloglogs, geospatial indexes with radius queries and streams.
919+ Redis has built-in replication, Lua scripting, LRU eviction, transactions and different levels of on-disk persistence, and provides high availability via Redis Sentinel and automatic partitioning with Redis Cluster.
920+ Read more on the [Redis website](https://redis.io/topics/introduction).
921+releases:
922+ - track: 6.0
923+ base: 21.04
924+ risk: beta
925+ architectures:
926+ - amd64
927+ - arm64
928+ - ppc64el
929+ - s390x
930+ - track: 5.0
931+ version: 5.0.7
932+ base: 20.04
933+ risk: beta
934+ architectures:
935+ - amd64
936+ - arm64
937+ - ppc64el
938+ - s390x
939+docker:
940+ parameters:
941+ - -p 30073:6379
942+ - -e REDIS_PASSWORD=mypassword
943+ access: Access your Redis server at `localhost:30073`.
944+parameters:
945+ - type: -e
946+ value: TZ=UTC
947+ description: Timezone.
948+ - type: -e
949+ value: ALLOW_EMPTY_PASSWORD
950+ description: Set to `yes` to allow connections to `redis-server` without a password. **This setting is not recommended in production environments**.
951+ - type: -e
952+ value: REDIS_PASSWORD
953+ description: Set the desired password to be used.
954+ - type: -e
955+ value: REDIS_RANDOM_PASSWORD
956+ description: Set this variable to `1` if you would like the entrypoint script to generate a random password for you. You will be able to see the generated password in the logs (`docker logs`).
957+ - type: -e
958+ value: REDIS_ALLOW_REMOTE_CONNECTIONS=yes
959+ description: Set to `no` to disallow remote connections to `redis-server` (i.e., make `redis-server` listen to `127.0.0.1` only).
960+ - type: -e
961+ value: REDIS_EXTRA_FLAGS
962+ description: Specify extra flags to be passed to `redis-server` when initializing it.
963+ - type: -p
964+ value: 30073:6379
965+ description: Expose redis on `localhost:30073`.
966+ - type: -v
967+ value: /path/to/redis.conf:/etc/redis/redis.conf
968+ description: Local [configuration file](https://redis.io/topics/config) `redis.conf` (try [this example](https://git.launchpad.net/~canonical-server/ubuntu-docker-images/+git/redis/plain/examples/config/redis.conf)).
969+debug:
970+ network:
971+ client: redis-cli
972+ args: -h redis-container
973+ followup: |
974+ ```
975+ Now you can:
976+ ```
977+ redis:6379> AUTH mypassword
978+ OK
979+ redis:6379> PING
980+ PONG
981+ redis:6379>
982+microk8s:
983+ configmap:
984+ name: redis-config
985+ files:
986+ - key: redis
987+ name: redis.conf
988+ link: https://git.launchpad.net/~canonical-server/ubuntu-docker-images/+git/redis/plain/examples/config/redis.conf
989+ deploy:
990+ link: https://git.launchpad.net/~canonical-server/ubuntu-docker-images/+git/redis/plain/examples/redis-deployment.yml
991+ access: You will now be able to connect to the Redis server on `localhost:30073`.
992diff --git a/data/squid.yaml b/data/squid.yaml
993new file mode 100644
994index 0000000..bd4cbec
995--- /dev/null
996+++ b/data/squid.yaml
997@@ -0,0 +1,55 @@
998+application: Squid
999+repo: squid
1000+description: >
1001+ Squid is a caching proxy for the Web supporting HTTP, HTTPS, FTP, and more.
1002+ It reduces bandwidth and improves response times by caching and reusing
1003+ frequently-requested web pages. Squid has extensive access controls and makes
1004+ a great server accelerator. It runs on most available operating systems,
1005+ including Windows and is licensed under the GNU GPL.
1006+releases:
1007+ - track: '4.10'
1008+ risk: beta
1009+ base: '20.04'
1010+ type: LTS
1011+ architectures:
1012+ - amd64
1013+ - arm64
1014+ - ppc64el
1015+ - s390x
1016+ - track: '4.13'
1017+ risk: edge
1018+ base: '21.10'
1019+ architectures:
1020+ - amd64
1021+ - arm64
1022+ - ppc64el
1023+ - s390x
1024+docker:
1025+ parameters:
1026+ - -p 3128:3128
1027+ access: Access your Squid proxy at `localhost:3128`.
1028+parameters:
1029+ - type: -e
1030+ value: TZ=UTC
1031+ description: Timezone.
1032+ - type: -p
1033+ value: 3128:3128
1034+ description: Expose the proxy service
1035+ - type: -v
1036+ value: /path/to/logs:/var/log/squid
1037+ description: Volume to store squid logs
1038+ - type: -v
1039+ value: /path/to/data:/var/spool/squid
1040+ description: Volume to store the squid cache
1041+debug:
1042+ - nothing
1043+microk8s:
1044+ configmap:
1045+ name: squid-config
1046+ files:
1047+ - key: squid
1048+ name: squid.conf
1049+ link: https://git.launchpad.net/~canonical-server/ubuntu-docker-images/+git/squid/plain/examples/config/squid.conf
1050+ deploy:
1051+ link: https://git.launchpad.net/~canonical-server/ubuntu-docker-images/+git/squid/plain/examples/squid-deployment.yml
1052+ access: You can now access the squid proxy on port 3128
1053\ No newline at end of file
1054diff --git a/data/telegraf.yaml b/data/telegraf.yaml
1055new file mode 100644
1056index 0000000..27acffc
1057--- /dev/null
1058+++ b/data/telegraf.yaml
1059@@ -0,0 +1,47 @@
1060+application: Telegraf™ software
1061+repo: telegraf
1062+description: >
1063+ Telegraf is an agent for collecting, processing, aggregating, and writing metrics. Design goals are to have a minimal memory footprint with a plugin system so that developers in the community can easily add support for collecting metrics. Read more on the [Telegraf website](https://www.influxdata.com/time-series-platform/telegraf/).
1064+releases:
1065+ - track: 1.17
1066+ risk: beta
1067+ base: 21.04
1068+ architectures:
1069+ - amd64
1070+ - arm64
1071+ - ppc64el
1072+ - s390x
1073+ - track: 1.15
1074+ risk: beta
1075+ version: 1.15.2
1076+ base: 20.04
1077+ architectures:
1078+ - amd64
1079+ - arm64
1080+ - ppc64el
1081+ - s390x
1082+docker:
1083+ parameters:
1084+ - -p 30273:9273
1085+ access: Access your Telegraf server at `localhost:30273`.
1086+parameters:
1087+ - type: -e
1088+ value: TZ=UTC
1089+ description: Timezone.
1090+ - type: -p
1091+ value: 30273:9273
1092+ description: Expose Telegraf on `localhost:30273`.
1093+ - type: -v
1094+ value: /path/to/telegraf.conf:/etc/telegraf/telegraf.conf
1095+ description: Local [configuration file](https://docs.influxdata.com/telegraf/) `telegraf.conf` (try [this example](https://git.launchpad.net/~canonical-server/ubuntu-docker-images/+git/telegraf/plain/examples/config/telegraf.conf)).
1096+debug:
1097+ - nothing
1098+microk8s:
1099+ configmap:
1100+ files:
1101+ - key: main-config
1102+ name: telegraf.conf
1103+ link: https://git.launchpad.net/~canonical-server/ubuntu-docker-images/+git/telegraf/plain/examples/config/telegraf.conf
1104+ deploy:
1105+ link: https://git.launchpad.net/~canonical-server/ubuntu-docker-images/+git/telegraf/plain/examples/telegraf-deployment.yml
1106+ access: You will now be able to connect to the Telegraf server on `localhost:30073`.
1107diff --git a/out/apache2.md b/docs/docker.io/ubuntu/apache2.md
1108similarity index 77%
1109rename from out/apache2.md
1110rename to docs/docker.io/ubuntu/apache2.md
1111index 0194f38..cc18fdf 100644
1112--- a/out/apache2.md
1113+++ b/docs/docker.io/ubuntu/apache2.md
1114@@ -1,6 +1,7 @@
1115 # Apache2 | Ubuntu
1116
1117-Current Apache2 Docker Image from Ubuntu. Receives security updates and rolls to newer Apache2 or Ubuntu LTS. This repository is exempted from per-user rate limits. For [LTS Docker Image](https://ubuntu.com/security/docker-images) versions of this image, see `lts/apache2`.
1118+Current Apache2 Docker Image [from Canonical](https://ubuntu.com/security/docker-images), based on Ubuntu. Receives security updates and rolls to newer Apache2 or Ubuntu release. **This repository is free to use and exempted from per-user rate limits.**
1119+<!-- For [LTS Docker Image](https://ubuntu.com/security/docker-images) versions of this image, see `lts/apache2`. -->
1120
1121
1122 ## About Apache2
1123@@ -10,26 +11,31 @@ The Apache HTTP Server Project's goal is to build a secure, efficient and extens
1124
1125 ## Tags and Architectures
1126 ![LTS](https://assets.ubuntu.com/v1/0a5ff561-LTS%402x.png?h=17)
1127-Up to 5 years free security maintenance `from lts/apache2`.
1128+Up to 5 years free security maintenance on LTS channels.
1129+<!-- `from lts/apache2`. -->
1130
1131 ![ESM](https://assets.ubuntu.com/v1/572f3fbd-ESM%402x.png?h=17)
1132-Up to 10 years customer security maintenance `from store/canonical/apache2`.
1133+Up to 10 years customer security maintenance `from canonical/apache2`. [Request access](https://ubuntu.com/security/docker-images#get-in-touch).
1134
1135 _Tags in italics are not available in ubuntu/apache2 but are shown here for completeness._
1136
1137-| Channel Tag | | | Currently | Architectures |
1138+| Channel Tag | | | Currently | Architectures |
1139 |---|---|---|---|---|
1140-| **`2.4-20.04_beta`** &nbsp;&nbsp; | | | Apache2 2.4.41 on Ubuntu 20.04 LTS | `amd64`, `arm64`, `ppc64el`, `s390x` |
1141+ | **`2.4-21.04_beta`** &nbsp;&nbsp; | | | Apache2 2.4 on Ubuntu&nbsp;21.04&nbsp;| `amd64`, `arm64`, `ppc64el`, `s390x` |
1142+ | `2.4-20.04_beta` &nbsp;&nbsp; | ![LTS](https://assets.ubuntu.com/v1/0a5ff561-LTS%402x.png?h=17) | | Apache2 2.4.41 on Ubuntu&nbsp;20.04&nbsp;LTS| `amd64`, `arm64`, `ppc64el`, `s390x` |
1143 | _`track_risk`_ |
1144
1145-Channel tag shows the most stable channel for that track ordered `stable`, `candidate`, `beta`, `edge`. More risky channels are always implicitly available. So if `beta` is listed, you can also pull `edge`. If `candidate` is listed, you can pull beta and edge. When `stable` is listed, all four are available. Images are guaranteed to progress through the sequence `edge`, `beta`, `candidate` before `stable`.
1146+Channel Tag shows the most stable channel for that track ordered `stable`, `candidate`, `beta`, `edge`. More risky channels are always implicitly available. So if `beta` is listed, you can also pull `edge`. If `candidate` is listed, you can pull `beta` and `edge`. When `stable` is listed, all four are available. Images are guaranteed to progress through the sequence `edge`, `beta`, `candidate` before `stable`.
1147+
1148+### Commercial use and Extended Security Maintenance channels
1149+If your usage includes commercial redistribution or requires unavailable channels/versions, please [get in touch with the Canonical team](https://ubuntu.com/security/docker-images#get-in-touch) (or using rocks@canonical.com).
1150
1151 ## Usage
1152
1153 Launch this image locally:
1154
1155 ```sh
1156-docker run -d --name apache2-container -e TZ=UTC -p 8080:80 ubuntu/apache2:2.4-20.04_beta
1157+docker run -d --name apache2-container -e TZ=UTC -p 8080:80 ubuntu/apache2:2.4-21.04_beta
1158 ```
1159 Access your Apache2 server at `http://localhost:8080`.
1160
1161@@ -64,7 +70,7 @@ Works with any Kubernetes; if you don't have one, we recommend you [install Micr
1162
1163 Download
1164 [apache2.conf](https://git.launchpad.net/~canonical-server/ubuntu-docker-images/+git/apache2/plain/examples/config/apache2.conf), [index.html](https://git.launchpad.net/~canonical-server/ubuntu-docker-images/+git/apache2/plain/examples/config/html/index.html) and
1165-[apache2-deployment.yml](https://git.launchpad.net/~canonical-server/ubuntu-docker-images/+git/apache2/plain/examples/apache2-deployment.yml) and set `containers.apache2.image` in `apache2-deployment.yml` to your chosen channel tag (e.g. `ubuntu/apache2:2.4-20.04_beta`), then:
1166+[apache2-deployment.yml](https://git.launchpad.net/~canonical-server/ubuntu-docker-images/+git/apache2/plain/examples/apache2-deployment.yml) and set `containers.apache2.image` in `apache2-deployment.yml` to your chosen channel tag (e.g. `ubuntu/apache2:2.4-21.04_beta`), then:
1167
1168 ```sh
1169 kubectl create configmap apache2-config --from-file=apache2=apache2.conf --from-file=apache2-site=index.html
1170@@ -85,3 +91,4 @@ Please title the bug "`apache2: <issue summary>`". Make sure to include the dige
1171 docker images --no-trunc --quiet ubuntu/apache2:<tag>
1172 ```
1173
1174+
1175diff --git a/docs/docker.io/ubuntu/bind9.md b/docs/docker.io/ubuntu/bind9.md
1176new file mode 100644
1177index 0000000..f2e3258
1178--- /dev/null
1179+++ b/docs/docker.io/ubuntu/bind9.md
1180@@ -0,0 +1,92 @@
1181+# Bind9 | Ubuntu
1182+
1183+Current Bind9 Docker Image [from Canonical](https://ubuntu.com/security/docker-images), based on Ubuntu. Receives security updates and rolls to newer Bind9 or Ubuntu release. **This repository is free to use and exempted from per-user rate limits.**
1184+<!-- For [LTS Docker Image](https://ubuntu.com/security/docker-images) versions of this image, see `lts/bind9`. -->
1185+
1186+
1187+## About Bind9
1188+
1189+BIND 9 provides software for Domain Name System (DNS) management including both defining domain names authoritatively for a given DNS zone, and recursively resolving domain names to their IP addresses. In addition to BIND 9's DNS server itself, `named`, this container also includes tools for performing DNS queries and dynamic updates. Read more on the [BIND 9 website](https://www.isc.org/bind/).
1190+
1191+
1192+## Tags and Architectures
1193+![LTS](https://assets.ubuntu.com/v1/0a5ff561-LTS%402x.png?h=17)
1194+Up to 5 years free security maintenance on LTS channels.
1195+<!-- `from lts/bind9`. -->
1196+
1197+![ESM](https://assets.ubuntu.com/v1/572f3fbd-ESM%402x.png?h=17)
1198+Up to 10 years customer security maintenance `from canonical/bind9`. [Request access](https://ubuntu.com/security/docker-images#get-in-touch).
1199+
1200+_Tags in italics are not available in ubuntu/bind9 but are shown here for completeness._
1201+
1202+| Channel Tag | | | Currently | Architectures |
1203+|---|---|---|---|---|
1204+ | **`9.16-20.04_beta`** &nbsp;&nbsp; | ![LTS](https://assets.ubuntu.com/v1/0a5ff561-LTS%402x.png?h=17) | | Bind9 9.16.15 on Ubuntu&nbsp;20.04&nbsp;LTS| `amd64`, `arm64`, `ppc64el`, `s390x` |
1205+| _`track_risk`_ |
1206+
1207+Channel Tag shows the most stable channel for that track ordered `stable`, `candidate`, `beta`, `edge`. More risky channels are always implicitly available. So if `beta` is listed, you can also pull `edge`. If `candidate` is listed, you can pull `beta` and `edge`. When `stable` is listed, all four are available. Images are guaranteed to progress through the sequence `edge`, `beta`, `candidate` before `stable`.
1208+
1209+### Commercial use and Extended Security Maintenance channels
1210+If your usage includes commercial redistribution or requires unavailable channels/versions, please [get in touch with the Canonical team](https://ubuntu.com/security/docker-images#get-in-touch) (or using rocks@canonical.com).
1211+
1212+## Usage
1213+
1214+Launch this image locally:
1215+
1216+```sh
1217+docker run -d --name bind9-container -e TZ=UTC -p 30053:53 ubuntu/bind9:9.16-20.04_beta
1218+```
1219+Access your Bind9 server at `localhost:30053`
1220+
1221+#### Parameters
1222+
1223+| Parameter | Description |
1224+|---|---|
1225+| `-e TZ=UTC` | Timezone. |
1226+| `-p 1803233` | Expose bind9 on `localhost:30053`. |
1227+| `-v /path/to/bind/configuration:/etc/bind/named.conf` | Local [configuration file](https://bind9.readthedocs.io/en/latest/reference.html) `named.conf` (try [this example](https://git.launchpad.net/~canonical-server/ubuntu-docker-images/+git/bind9/plain/examples/caching-nameserver/named.conf.options)). |
1228+| `-v /path/to/cached/data:/var/cache/bind` | Location where locally cached data can be dumped. |
1229+| `-v /path/to/resource/records:/var/lib/bind` | Location of Resource Records defining various domain information. |
1230+
1231+
1232+#### Testing/Debugging
1233+
1234+To debug the container:
1235+
1236+```sh
1237+docker logs -f bind9-container
1238+```
1239+
1240+To get an interactive shell:
1241+
1242+```sh
1243+docker exec -it bind9-container /bin/bash
1244+```
1245+
1246+
1247+## Deploy with Kubernetes
1248+
1249+Works with any Kubernetes; if you don't have one, we recommend you [install MicroK8s](https://microk8s.io/) and `microk8s.enable dns storage` then `snap alias microk8s.kubectl kubectl`.
1250+
1251+Download
1252+[bind9-deployment.yml](https://git.launchpad.net/~canonical-server/ubuntu-docker-images/+git/bind9/plain/examples/bind9-deployment.yml) and set `containers.bind9.image` in `bind9-deployment.yml` to your chosen channel tag (e.g. `ubuntu/bind9:9.16-20.04_beta`), then:
1253+
1254+```sh
1255+kubectl apply -f bind9-deployment.yml
1256+```
1257+
1258+You will now be able to connect to the Bind9 server on localhost:30053`.
1259+
1260+## Bugs and feature requests
1261+
1262+If you find a bug in our image or want to request a specific feature, please file a bug here:
1263+
1264+[https://bugs.launchpad.net/ubuntu-docker-images/+filebug](https://bugs.launchpad.net/ubuntu-docker-images/+filebug)
1265+
1266+Please title the bug "`bind9: <issue summary>`". Make sure to include the digest of the image you are using, from:
1267+
1268+```sh
1269+docker images --no-trunc --quiet ubuntu/bind9:<tag>
1270+```
1271+
1272+
1273diff --git a/docs/docker.io/ubuntu/cassandra.md b/docs/docker.io/ubuntu/cassandra.md
1274new file mode 100644
1275index 0000000..400f771
1276--- /dev/null
1277+++ b/docs/docker.io/ubuntu/cassandra.md
1278@@ -0,0 +1,96 @@
1279+# Cassandra | Ubuntu
1280+
1281+Current Cassandra Docker Image [from Canonical](https://ubuntu.com/security/docker-images), based on Ubuntu. Receives security updates and rolls to newer Cassandra or Ubuntu release. **This repository is free to use and exempted from per-user rate limits.**
1282+<!-- For [LTS Docker Image](https://ubuntu.com/security/docker-images) versions of this image, see `lts/cassandra`. -->
1283+
1284+
1285+## About Cassandra
1286+
1287+Apache Cassandra is an open source NoSQL distributed database trusted by thousands of companies for scalability and high availability without compromising performance. Linear scalability and proven fault-tolerance on commodity hardware or cloud infrastructure make it a good platform for mission-critical data.
1288+
1289+
1290+## Tags and Architectures
1291+![LTS](https://assets.ubuntu.com/v1/0a5ff561-LTS%402x.png?h=17)
1292+Up to 5 years free security maintenance on LTS channels.
1293+<!-- `from lts/cassandra`. -->
1294+
1295+![ESM](https://assets.ubuntu.com/v1/572f3fbd-ESM%402x.png?h=17)
1296+Up to 10 years customer security maintenance `from canonical/cassandra`. [Request access](https://ubuntu.com/security/docker-images#get-in-touch).
1297+
1298+_Tags in italics are not available in ubuntu/cassandra but are shown here for completeness._
1299+
1300+| Channel Tag | | | Currently | Architectures |
1301+|---|---|---|---|---|
1302+ | **`4.0-21.04_beta`** &nbsp;&nbsp; | | | Cassandra 4.0 on Ubuntu&nbsp;21.04&nbsp;| `amd64`, `arm64`, `ppc64el`, `s390x` |
1303+ | `4.0-20.04_beta` &nbsp;&nbsp; | | | Cassandra 4.0 on Ubuntu&nbsp;20.04&nbsp;LTS| `amd64`, `arm64`, `ppc64el`, `s390x` |
1304+| _`track_risk`_ |
1305+
1306+Channel Tag shows the most stable channel for that track ordered `stable`, `candidate`, `beta`, `edge`. More risky channels are always implicitly available. So if `beta` is listed, you can also pull `edge`. If `candidate` is listed, you can pull `beta` and `edge`. When `stable` is listed, all four are available. Images are guaranteed to progress through the sequence `edge`, `beta`, `candidate` before `stable`.
1307+
1308+### Commercial use and Extended Security Maintenance channels
1309+If your usage includes commercial redistribution or requires unavailable channels/versions, please [get in touch with the Canonical team](https://ubuntu.com/security/docker-images#get-in-touch) (or using rocks@canonical.com).
1310+
1311+## Usage
1312+
1313+Launch this image locally:
1314+
1315+```sh
1316+docker run -d --name cassandra-container -e TZ=UTC -p 7000:7000 -p 7001:7001 -p 7199:7199 -p 9042:9042 -p 9160:9160 ubuntu/cassandra:4.0-21.04_beta
1317+```
1318+Access your Cassandra server with `cqlsh localhost 9042`.
1319+
1320+#### Parameters
1321+
1322+| Parameter | Description |
1323+|---|---|
1324+| `-e TZ=UTC` | Timezone. |
1325+| `-p 7000:7000` | Expose itra-node communication |
1326+| `-p 7001:7001` | Expose TLS itra-node communication |
1327+| `-p 7199:7199` | Expose JMX |
1328+| `-p 9042:9042` | Expose CQL |
1329+| `-p 9160:9160` | Expose thrift service |
1330+| `-v /local/path/to/data:/var/lib/cassandra` | Volume to store Cassandra data |
1331+| `-v /path/to/logs:/var/log/cassandra` | Volume to store cassandra logs |
1332+
1333+
1334+#### Testing/Debugging
1335+
1336+To debug the container:
1337+
1338+```sh
1339+docker logs -f cassandra-container
1340+```
1341+
1342+To get an interactive shell:
1343+
1344+```sh
1345+docker exec -it cassandra-container /bin/bash
1346+```
1347+
1348+
1349+## Deploy with Kubernetes
1350+
1351+Works with any Kubernetes; if you don't have one, we recommend you [install MicroK8s](https://microk8s.io/) and `microk8s.enable dns storage` then `snap alias microk8s.kubectl kubectl`.
1352+
1353+Download
1354+[cassandra-deployment.yml](https://git.launchpad.net/~canonical-server/ubuntu-docker-images/+git/cassandra/plain/examples/cassandra-deployment.yml) and set `containers.cassandra.image` in `cassandra-deployment.yml` to your chosen channel tag (e.g. `ubuntu/cassandra:4.0-21.04_beta`), then:
1355+
1356+```sh
1357+kubectl apply -f cassandra-deployment.yml
1358+```
1359+
1360+You can now access the cassandra server on port 9042 (e.g., cqlsh localhost 9042)
1361+
1362+## Bugs and feature requests
1363+
1364+If you find a bug in our image or want to request a specific feature, please file a bug here:
1365+
1366+[https://bugs.launchpad.net/ubuntu-docker-images/+filebug](https://bugs.launchpad.net/ubuntu-docker-images/+filebug)
1367+
1368+Please title the bug "`cassandra: <issue summary>`". Make sure to include the digest of the image you are using, from:
1369+
1370+```sh
1371+docker images --no-trunc --quiet ubuntu/cassandra:<tag>
1372+```
1373+
1374+
1375diff --git a/out/cortex.md b/docs/docker.io/ubuntu/cortex.md
1376similarity index 78%
1377rename from out/cortex.md
1378rename to docs/docker.io/ubuntu/cortex.md
1379index 4301d6d..a2d0b20 100644
1380--- a/out/cortex.md
1381+++ b/docs/docker.io/ubuntu/cortex.md
1382@@ -1,6 +1,7 @@
1383 # Cortex | Ubuntu
1384
1385-Current Cortex Docker Image from Ubuntu. Receives security updates and rolls to newer Cortex or Ubuntu LTS. This repository is exempted from per-user rate limits. For [LTS Docker Image](https://ubuntu.com/security/docker-images) versions of this image, see `lts/cortex`.
1386+Current Cortex Docker Image [from Canonical](https://ubuntu.com/security/docker-images), based on Ubuntu. Receives security updates and rolls to newer Cortex or Ubuntu release. **This repository is free to use and exempted from per-user rate limits.**
1387+<!-- For [LTS Docker Image](https://ubuntu.com/security/docker-images) versions of this image, see `lts/cortex`. -->
1388
1389
1390 ## About Cortex
1391@@ -17,26 +18,31 @@ Read more on the [Cortex website](https://cortexmetrics.io/).
1392
1393 ## Tags and Architectures
1394 ![LTS](https://assets.ubuntu.com/v1/0a5ff561-LTS%402x.png?h=17)
1395-Up to 5 years free security maintenance `from lts/cortex`.
1396+Up to 5 years free security maintenance on LTS channels.
1397+<!-- `from lts/cortex`. -->
1398
1399 ![ESM](https://assets.ubuntu.com/v1/572f3fbd-ESM%402x.png?h=17)
1400-Up to 10 years customer security maintenance `from store/canonical/cortex`.
1401+Up to 10 years customer security maintenance `from canonical/cortex`. [Request access](https://ubuntu.com/security/docker-images#get-in-touch).
1402
1403 _Tags in italics are not available in ubuntu/cortex but are shown here for completeness._
1404
1405-| Channel Tag | | | Currently | Architectures |
1406+| Channel Tag | | | Currently | Architectures |
1407 |---|---|---|---|---|
1408-| **`1.4-20.04_beta`** &nbsp;&nbsp; | | | Cortex 1.4.0 on Ubuntu 20.04 LTS | `amd64`, `arm64`, `ppc64el`, `s390x` |
1409+ | **`1.7-21.04_beta`** &nbsp;&nbsp; | | | Cortex 1.7 on Ubuntu&nbsp;21.04&nbsp;| `amd64`, `arm64`, `ppc64el`, `s390x` |
1410+ | `1.4-20.04_beta` &nbsp;&nbsp; | | | Cortex 1.4.0 on Ubuntu&nbsp;20.04&nbsp;LTS| `amd64`, `arm64`, `ppc64el`, `s390x` |
1411 | _`track_risk`_ |
1412
1413-Channel tag shows the most stable channel for that track ordered `stable`, `candidate`, `beta`, `edge`. More risky channels are always implicitly available. So if `beta` is listed, you can also pull `edge`. If `candidate` is listed, you can pull beta and edge. When `stable` is listed, all four are available. Images are guaranteed to progress through the sequence `edge`, `beta`, `candidate` before `stable`.
1414+Channel Tag shows the most stable channel for that track ordered `stable`, `candidate`, `beta`, `edge`. More risky channels are always implicitly available. So if `beta` is listed, you can also pull `edge`. If `candidate` is listed, you can pull `beta` and `edge`. When `stable` is listed, all four are available. Images are guaranteed to progress through the sequence `edge`, `beta`, `candidate` before `stable`.
1415+
1416+### Commercial use and Extended Security Maintenance channels
1417+If your usage includes commercial redistribution or requires unavailable channels/versions, please [get in touch with the Canonical team](https://ubuntu.com/security/docker-images#get-in-touch) (or using rocks@canonical.com).
1418
1419 ## Usage
1420
1421 Launch this image locally:
1422
1423 ```sh
1424-docker run -d --name cortex-container -e TZ=UTC -p 32709:9009 ubuntu/cortex:1.4-20.04_beta
1425+docker run -d --name cortex-container -e TZ=UTC -p 32709:9009 ubuntu/cortex:1.7-21.04_beta
1426 ```
1427 Access your Cortex server at `http://localhost:32709`.
1428
1429@@ -70,7 +76,7 @@ Works with any Kubernetes; if you don't have one, we recommend you [install Micr
1430
1431 Download
1432 [cortex.yaml](https://git.launchpad.net/~canonical-server/ubuntu-docker-images/+git/cortex/plain/oci/examples/config/cortex.yaml) and
1433-[cortex-deployment.yml](https://git.launchpad.net/~canonical-server/ubuntu-docker-images/+git/cortex/plain/oci/examples/cortex-deployment.yml) and set `containers.cortex.image` in `cortex-deployment.yml` to your chosen channel tag (e.g. `ubuntu/cortex:1.4-20.04_beta`), then:
1434+[cortex-deployment.yml](https://git.launchpad.net/~canonical-server/ubuntu-docker-images/+git/cortex/plain/oci/examples/cortex-deployment.yml) and set `containers.cortex.image` in `cortex-deployment.yml` to your chosen channel tag (e.g. `ubuntu/cortex:1.7-21.04_beta`), then:
1435
1436 ```sh
1437 kubectl create configmap cortex-config --from-file=main-config=cortex.yaml
1438@@ -91,3 +97,4 @@ Please title the bug "`cortex: <issue summary>`". Make sure to include the diges
1439 docker images --no-trunc --quiet ubuntu/cortex:<tag>
1440 ```
1441
1442+
1443diff --git a/out/grafana.md b/docs/docker.io/ubuntu/grafana.md
1444similarity index 75%
1445rename from out/grafana.md
1446rename to docs/docker.io/ubuntu/grafana.md
1447index b090b98..c1aef62 100644
1448--- a/out/grafana.md
1449+++ b/docs/docker.io/ubuntu/grafana.md
1450@@ -1,35 +1,41 @@
1451-# Grafana | Ubuntu
1452+# Grafana™ software | Ubuntu
1453
1454-Current Grafana Docker Image from Ubuntu. Receives security updates and rolls to newer Grafana or Ubuntu LTS. This repository is exempted from per-user rate limits. For [LTS Docker Image](https://ubuntu.com/security/docker-images) versions of this image, see `lts/grafana`.
1455+Current Grafana™ software Docker Image [from Canonical](https://ubuntu.com/security/docker-images), based on Ubuntu. Receives security updates and rolls to newer Grafana™ software or Ubuntu release. **This repository is free to use and exempted from per-user rate limits.**
1456+<!-- For [LTS Docker Image](https://ubuntu.com/security/docker-images) versions of this image, see `lts/grafana`. -->
1457
1458
1459-## About Grafana
1460+## About Grafana™ software
1461
1462 Grafana is a feature rich metrics dashboard and graph editor for Cloudwatch, Elasticsearch, Graphite, InfluxDB, OpenTSB, Prometheus, and Hosted Metrics. Read more on the [Grafana website](https://grafana.com/docs/).
1463
1464
1465 ## Tags and Architectures
1466 ![LTS](https://assets.ubuntu.com/v1/0a5ff561-LTS%402x.png?h=17)
1467-Up to 5 years free security maintenance `from lts/grafana`.
1468+Up to 5 years free security maintenance on LTS channels.
1469+<!-- `from lts/grafana`. -->
1470
1471 ![ESM](https://assets.ubuntu.com/v1/572f3fbd-ESM%402x.png?h=17)
1472-Up to 10 years customer security maintenance `from store/canonical/grafana`.
1473+Up to 10 years customer security maintenance `from canonical/grafana`. [Request access](https://ubuntu.com/security/docker-images#get-in-touch).
1474
1475 _Tags in italics are not available in ubuntu/grafana but are shown here for completeness._
1476
1477-| Channel Tag | | | Currently | Architectures |
1478+| Channel Tag | | | Currently | Architectures |
1479 |---|---|---|---|---|
1480-| **`7.2-20.04_beta`** &nbsp;&nbsp; | | | Grafana 7.2.0 on Ubuntu 20.04 LTS | `amd64`, `arm64`, `ppc64el`, `s390x` |
1481+ | **`7.4-21.04_beta`** &nbsp;&nbsp; | | | Grafana™ software 7.4 on Ubuntu&nbsp;21.04&nbsp;| `amd64`, `arm64`, `ppc64el`, `s390x` |
1482+ | `7.2-20.04_beta` &nbsp;&nbsp; | | | Grafana™ software 7.2.0 on Ubuntu&nbsp;20.04&nbsp;LTS| `amd64`, `arm64`, `ppc64el`, `s390x` |
1483 | _`track_risk`_ |
1484
1485-Channel tag shows the most stable channel for that track ordered `stable`, `candidate`, `beta`, `edge`. More risky channels are always implicitly available. So if `beta` is listed, you can also pull `edge`. If `candidate` is listed, you can pull beta and edge. When `stable` is listed, all four are available. Images are guaranteed to progress through the sequence `edge`, `beta`, `candidate` before `stable`.
1486+Channel Tag shows the most stable channel for that track ordered `stable`, `candidate`, `beta`, `edge`. More risky channels are always implicitly available. So if `beta` is listed, you can also pull `edge`. If `candidate` is listed, you can pull `beta` and `edge`. When `stable` is listed, all four are available. Images are guaranteed to progress through the sequence `edge`, `beta`, `candidate` before `stable`.
1487+
1488+### Commercial use and Extended Security Maintenance channels
1489+If your usage includes commercial redistribution or requires unavailable channels/versions, please [get in touch with the Canonical team](https://ubuntu.com/security/docker-images#get-in-touch) (or using rocks@canonical.com).
1490
1491 ## Usage
1492
1493 Launch this image locally:
1494
1495 ```sh
1496-docker run -d --name grafana-container -e TZ=UTC -p 30000:3000 ubuntu/grafana:7.2-20.04_beta
1497+docker run -d --name grafana-container -e TZ=UTC -p 30000:3000 ubuntu/grafana:7.4-21.04_beta
1498 ```
1499 Access your Grafana server at `localhost:30000`.
1500
1501@@ -64,7 +70,7 @@ Works with any Kubernetes; if you don't have one, we recommend you [install Micr
1502
1503 Download
1504 [datasource.yml](https://git.launchpad.net/~canonical-server/ubuntu-docker-images/+git/grafana/plain/examples/config/datasource.yml), [dashboard.yml](https://git.launchpad.net/~canonical-server/ubuntu-docker-images/+git/grafana/plain/examples/config/dashboard.yml), [system-stats-dashboard.json](https://git.launchpad.net/~canonical-server/ubuntu-docker-images/+git/grafana/plain/examples/config/system-stats-dashboard.json) and
1505-[grafana-deployment.yml](https://git.launchpad.net/~canonical-server/ubuntu-docker-images/+git/grafana/plain/examples/grafana-deployment.yml) and set `containers.grafana.image` in `grafana-deployment.yml` to your chosen channel tag (e.g. `ubuntu/grafana:7.2-20.04_beta`), then:
1506+[grafana-deployment.yml](https://git.launchpad.net/~canonical-server/ubuntu-docker-images/+git/grafana/plain/examples/grafana-deployment.yml) and set `containers.grafana.image` in `grafana-deployment.yml` to your chosen channel tag (e.g. `ubuntu/grafana:7.4-21.04_beta`), then:
1507
1508 ```sh
1509 kubectl create configmap grafana-config --from-file=grafana-datasource=datasource.yml --from-file=grafana-dashboard-definition=dashboard.yml --from-file=grafana-dashboard=system-stats-dashboard.json
1510@@ -85,3 +91,4 @@ Please title the bug "`grafana: <issue summary>`". Make sure to include the dige
1511 docker images --no-trunc --quiet ubuntu/grafana:<tag>
1512 ```
1513
1514+
1515diff --git a/out/memcached.md b/docs/docker.io/ubuntu/memcached.md
1516similarity index 82%
1517rename from out/memcached.md
1518rename to docs/docker.io/ubuntu/memcached.md
1519index 54f042b..b03808f 100644
1520--- a/out/memcached.md
1521+++ b/docs/docker.io/ubuntu/memcached.md
1522@@ -1,6 +1,7 @@
1523 # Memcached | Ubuntu
1524
1525-Current Memcached Docker Image from Ubuntu. Receives security updates and rolls to newer Memcached or Ubuntu LTS. This repository is exempted from per-user rate limits. For [LTS Docker Image](https://ubuntu.com/security/docker-images) versions of this image, see `lts/memcached`.
1526+Current Memcached Docker Image [from Canonical](https://ubuntu.com/security/docker-images), based on Ubuntu. Receives security updates and rolls to newer Memcached or Ubuntu release. **This repository is free to use and exempted from per-user rate limits.**
1527+<!-- For [LTS Docker Image](https://ubuntu.com/security/docker-images) versions of this image, see `lts/memcached`. -->
1528
1529
1530 ## About Memcached
1531@@ -10,26 +11,31 @@ Memcached is an in-memory key-value store for small chunks of arbitrary data (st
1532
1533 ## Tags and Architectures
1534 ![LTS](https://assets.ubuntu.com/v1/0a5ff561-LTS%402x.png?h=17)
1535-Up to 5 years free security maintenance `from lts/memcached`.
1536+Up to 5 years free security maintenance on LTS channels.
1537+<!-- `from lts/memcached`. -->
1538
1539 ![ESM](https://assets.ubuntu.com/v1/572f3fbd-ESM%402x.png?h=17)
1540-Up to 10 years customer security maintenance `from store/canonical/memcached`.
1541+Up to 10 years customer security maintenance `from canonical/memcached`. [Request access](https://ubuntu.com/security/docker-images#get-in-touch).
1542
1543 _Tags in italics are not available in ubuntu/memcached but are shown here for completeness._
1544
1545-| Channel Tag | | | Currently | Architectures |
1546+| Channel Tag | | | Currently | Architectures |
1547 |---|---|---|---|---|
1548-| **`1.5-20.04_beta`** &nbsp;&nbsp; | | | Memcached 1.5.22 on Ubuntu 20.04 LTS | `amd64`, `arm64`, `ppc64el`, `s390x` |
1549+ | **`1.6-21.04_beta`** &nbsp;&nbsp; | | | Memcached 1.6 on Ubuntu&nbsp;21.04&nbsp;| `amd64`, `arm64`, `ppc64el`, `s390x` |
1550+ | `1.5-20.04_beta` &nbsp;&nbsp; | ![LTS](https://assets.ubuntu.com/v1/0a5ff561-LTS%402x.png?h=17) | | Memcached 1.5.22 on Ubuntu&nbsp;20.04&nbsp;LTS| `amd64`, `arm64`, `ppc64el`, `s390x` |
1551 | _`track_risk`_ |
1552
1553-Channel tag shows the most stable channel for that track ordered `stable`, `candidate`, `beta`, `edge`. More risky channels are always implicitly available. So if `beta` is listed, you can also pull `edge`. If `candidate` is listed, you can pull beta and edge. When `stable` is listed, all four are available. Images are guaranteed to progress through the sequence `edge`, `beta`, `candidate` before `stable`.
1554+Channel Tag shows the most stable channel for that track ordered `stable`, `candidate`, `beta`, `edge`. More risky channels are always implicitly available. So if `beta` is listed, you can also pull `edge`. If `candidate` is listed, you can pull `beta` and `edge`. When `stable` is listed, all four are available. Images are guaranteed to progress through the sequence `edge`, `beta`, `candidate` before `stable`.
1555+
1556+### Commercial use and Extended Security Maintenance channels
1557+If your usage includes commercial redistribution or requires unavailable channels/versions, please [get in touch with the Canonical team](https://ubuntu.com/security/docker-images#get-in-touch) (or using rocks@canonical.com).
1558
1559 ## Usage
1560
1561 Launch this image locally:
1562
1563 ```sh
1564-docker run -d --name memcached-container -e TZ=UTC ubuntu/memcached:1.5-20.04_beta
1565+docker run -d --name memcached-container -e TZ=UTC ubuntu/memcached:1.6-21.04_beta
1566 ```
1567
1568 #### Parameters
1569@@ -94,7 +100,7 @@ In this case you can append the flags themselves or a shell script to the run co
1570 Works with any Kubernetes; if you don't have one, we recommend you [install MicroK8s](https://microk8s.io/) and `microk8s.enable dns storage` then `snap alias microk8s.kubectl kubectl`.
1571
1572 Download
1573-[memcached-deployment.yml](https://git.launchpad.net/~canonical-server/ubuntu-docker-images/+git/memcached/plain/examples/memcached-deployment.yml) and set `containers.memcached.image` in `memcached-deployment.yml` to your chosen channel tag (e.g. `ubuntu/memcached:1.5-20.04_beta`), then:
1574+[memcached-deployment.yml](https://git.launchpad.net/~canonical-server/ubuntu-docker-images/+git/memcached/plain/examples/memcached-deployment.yml) and set `containers.memcached.image` in `memcached-deployment.yml` to your chosen channel tag (e.g. `ubuntu/memcached:1.6-21.04_beta`), then:
1575
1576 ```sh
1577 kubectl apply -f memcached-deployment.yml
1578@@ -114,3 +120,4 @@ Please title the bug "`memcached: <issue summary>`". Make sure to include the di
1579 docker images --no-trunc --quiet ubuntu/memcached:<tag>
1580 ```
1581
1582+
1583diff --git a/out/mysql.md b/docs/docker.io/ubuntu/mysql.md
1584similarity index 80%
1585rename from out/mysql.md
1586rename to docs/docker.io/ubuntu/mysql.md
1587index 3d74860..5129a97 100644
1588--- a/out/mysql.md
1589+++ b/docs/docker.io/ubuntu/mysql.md
1590@@ -1,35 +1,41 @@
1591-# MySQL | Ubuntu
1592+# MySQL™ | Ubuntu
1593
1594-Current MySQL Docker Image from Ubuntu. Receives security updates and rolls to newer MySQL or Ubuntu LTS. This repository is exempted from per-user rate limits. For [LTS Docker Image](https://ubuntu.com/security/docker-images) versions of this image, see `lts/mysql`.
1595+Current MySQL™ Docker Image [from Canonical](https://ubuntu.com/security/docker-images), based on Ubuntu. Receives security updates and rolls to newer MySQL™ or Ubuntu release. **This repository is free to use and exempted from per-user rate limits.**
1596+<!-- For [LTS Docker Image](https://ubuntu.com/security/docker-images) versions of this image, see `lts/mysql`. -->
1597
1598
1599-## About MySQL
1600+## About MySQL™
1601
1602 MySQL is a fast, stable and true multi-user, multi-threaded SQL database server. SQL (Structured Query Language) is the most popular database query language in the world. The main goals of MySQL are speed, robustness and ease of use. Read more on the [MySQL website](https://dev.mysql.com/doc/refman/8.0/en/).
1603
1604
1605 ## Tags and Architectures
1606 ![LTS](https://assets.ubuntu.com/v1/0a5ff561-LTS%402x.png?h=17)
1607-Up to 5 years free security maintenance `from lts/mysql`.
1608+Up to 5 years free security maintenance on LTS channels.
1609+<!-- `from lts/mysql`. -->
1610
1611 ![ESM](https://assets.ubuntu.com/v1/572f3fbd-ESM%402x.png?h=17)
1612-Up to 10 years customer security maintenance `from store/canonical/mysql`.
1613+Up to 10 years customer security maintenance `from canonical/mysql`. [Request access](https://ubuntu.com/security/docker-images#get-in-touch).
1614
1615 _Tags in italics are not available in ubuntu/mysql but are shown here for completeness._
1616
1617-| Channel Tag | | | Currently | Architectures |
1618+| Channel Tag | | | Currently | Architectures |
1619 |---|---|---|---|---|
1620-| **`8.0-20.04_beta`** &nbsp;&nbsp; | | | MySQL 8.0.22 on Ubuntu 20.04 LTS | `amd64`, `arm64`, `s390x` |
1621+ | **`8.0-21.04_beta`** &nbsp;&nbsp; | | | MySQL™ 8.0 on Ubuntu&nbsp;21.04&nbsp;| `amd64`, `arm64`, `s390x` |
1622+ | `8.0-20.04_beta` &nbsp;&nbsp; | ![LTS](https://assets.ubuntu.com/v1/0a5ff561-LTS%402x.png?h=17) | | MySQL™ 8.0.22 on Ubuntu&nbsp;20.04&nbsp;LTS| `amd64`, `arm64`, `s390x` |
1623 | _`track_risk`_ |
1624
1625-Channel tag shows the most stable channel for that track ordered `stable`, `candidate`, `beta`, `edge`. More risky channels are always implicitly available. So if `beta` is listed, you can also pull `edge`. If `candidate` is listed, you can pull beta and edge. When `stable` is listed, all four are available. Images are guaranteed to progress through the sequence `edge`, `beta`, `candidate` before `stable`.
1626+Channel Tag shows the most stable channel for that track ordered `stable`, `candidate`, `beta`, `edge`. More risky channels are always implicitly available. So if `beta` is listed, you can also pull `edge`. If `candidate` is listed, you can pull `beta` and `edge`. When `stable` is listed, all four are available. Images are guaranteed to progress through the sequence `edge`, `beta`, `candidate` before `stable`.
1627+
1628+### Commercial use and Extended Security Maintenance channels
1629+If your usage includes commercial redistribution or requires unavailable channels/versions, please [get in touch with the Canonical team](https://ubuntu.com/security/docker-images#get-in-touch) (or using rocks@canonical.com).
1630
1631 ## Usage
1632
1633 Launch this image locally:
1634
1635 ```sh
1636-docker run -d --name mysql-container -e TZ=UTC -p 30306:3306 -e MYSQL_ROOT_PASSWORD=My:S3cr3t/ ubuntu/mysql:8.0-20.04_beta
1637+docker run -d --name mysql-container -e TZ=UTC -p 30306:3306 -e MYSQL_ROOT_PASSWORD=My:S3cr3t/ ubuntu/mysql:8.0-21.04_beta
1638 ```
1639 Access your MySQL server at `localhost:30306`.
1640
1641@@ -80,7 +86,7 @@ This image also includes the `mysql` client for interactive container use:
1642 ```sh
1643 $ docker network create mysql-network
1644 $ docker network connect mysql-network mysql-container
1645-$ docker run -it --rm --network mysql-network ubuntu/mysql:8.0-20.04_beta mysql -hmysql-container -uroot -p
1646+$ docker run -it --rm --network mysql-network ubuntu/mysql:8.0-21.04_beta mysql -hmysql-container -uroot -p
1647 ```
1648 The password will be asked and you can enter `My:S3cr3t/`. Now, you are logged in and can enjoy your new instance.
1649
1650@@ -90,7 +96,7 @@ Works with any Kubernetes; if you don't have one, we recommend you [install Micr
1651
1652 Download
1653 [my-custom.cnf](https://git.launchpad.net/~canonical-server/ubuntu-docker-images/+git/mysql/plain/examples/config/my-custom.cnf) and
1654-[mysql-deployment.yml](https://git.launchpad.net/~canonical-server/ubuntu-docker-images/+git/mysql/plain/examples/mysql-deployment.yml) and set `containers.mysql.image` in `mysql-deployment.yml` to your chosen channel tag (e.g. `ubuntu/mysql:8.0-20.04_beta`), then:
1655+[mysql-deployment.yml](https://git.launchpad.net/~canonical-server/ubuntu-docker-images/+git/mysql/plain/examples/mysql-deployment.yml) and set `containers.mysql.image` in `mysql-deployment.yml` to your chosen channel tag (e.g. `ubuntu/mysql:8.0-21.04_beta`), then:
1656
1657 ```sh
1658 kubectl create configmap mysql-config --from-file=main-config=my-custom.cnf
1659@@ -111,3 +117,4 @@ Please title the bug "`mysql: <issue summary>`". Make sure to include the digest
1660 docker images --no-trunc --quiet ubuntu/mysql:<tag>
1661 ```
1662
1663+
1664diff --git a/out/nginx.md b/docs/docker.io/ubuntu/nginx.md
1665similarity index 77%
1666rename from out/nginx.md
1667rename to docs/docker.io/ubuntu/nginx.md
1668index 62230c9..710e302 100644
1669--- a/out/nginx.md
1670+++ b/docs/docker.io/ubuntu/nginx.md
1671@@ -1,6 +1,7 @@
1672 # Nginx | Ubuntu
1673
1674-Current Nginx Docker Image from Ubuntu. Receives security updates and rolls to newer Nginx or Ubuntu LTS. This repository is exempted from per-user rate limits. For [LTS Docker Image](https://ubuntu.com/security/docker-images) versions of this image, see `lts/nginx`.
1675+Current Nginx Docker Image [from Canonical](https://ubuntu.com/security/docker-images), based on Ubuntu. Receives security updates and rolls to newer Nginx or Ubuntu release. **This repository is free to use and exempted from per-user rate limits.**
1676+<!-- For [LTS Docker Image](https://ubuntu.com/security/docker-images) versions of this image, see `lts/nginx`. -->
1677
1678
1679 ## About Nginx
1680@@ -10,26 +11,31 @@ Nginx ("engine X") is a high-performance web and reverse proxy server created by
1681
1682 ## Tags and Architectures
1683 ![LTS](https://assets.ubuntu.com/v1/0a5ff561-LTS%402x.png?h=17)
1684-Up to 5 years free security maintenance `from lts/nginx`.
1685+Up to 5 years free security maintenance on LTS channels.
1686+<!-- `from lts/nginx`. -->
1687
1688 ![ESM](https://assets.ubuntu.com/v1/572f3fbd-ESM%402x.png?h=17)
1689-Up to 10 years customer security maintenance `from store/canonical/nginx`.
1690+Up to 10 years customer security maintenance `from canonical/nginx`. [Request access](https://ubuntu.com/security/docker-images#get-in-touch).
1691
1692 _Tags in italics are not available in ubuntu/nginx but are shown here for completeness._
1693
1694-| Channel Tag | | | Currently | Architectures |
1695+| Channel Tag | | | Currently | Architectures |
1696 |---|---|---|---|---|
1697-| **`1.18-20.04_beta`** &nbsp;&nbsp; | | | Nginx 1.18.0 on Ubuntu 20.04 LTS | `amd64`, `arm64`, `ppc64el`, `s390x` |
1698+ | **`1.18-21.04_beta`** &nbsp;&nbsp; | | | Nginx 1.18 on Ubuntu&nbsp;21.04&nbsp;| `amd64`, `arm64`, `ppc64el`, `s390x` |
1699+ | `1.18-20.04_beta` &nbsp;&nbsp; | ![LTS](https://assets.ubuntu.com/v1/0a5ff561-LTS%402x.png?h=17) | | Nginx 1.18.0 on Ubuntu&nbsp;20.04&nbsp;LTS| `amd64`, `arm64`, `ppc64el`, `s390x` |
1700 | _`track_risk`_ |
1701
1702-Channel tag shows the most stable channel for that track ordered `stable`, `candidate`, `beta`, `edge`. More risky channels are always implicitly available. So if `beta` is listed, you can also pull `edge`. If `candidate` is listed, you can pull beta and edge. When `stable` is listed, all four are available. Images are guaranteed to progress through the sequence `edge`, `beta`, `candidate` before `stable`.
1703+Channel Tag shows the most stable channel for that track ordered `stable`, `candidate`, `beta`, `edge`. More risky channels are always implicitly available. So if `beta` is listed, you can also pull `edge`. If `candidate` is listed, you can pull `beta` and `edge`. When `stable` is listed, all four are available. Images are guaranteed to progress through the sequence `edge`, `beta`, `candidate` before `stable`.
1704+
1705+### Commercial use and Extended Security Maintenance channels
1706+If your usage includes commercial redistribution or requires unavailable channels/versions, please [get in touch with the Canonical team](https://ubuntu.com/security/docker-images#get-in-touch) (or using rocks@canonical.com).
1707
1708 ## Usage
1709
1710 Launch this image locally:
1711
1712 ```sh
1713-docker run -d --name nginx-container -e TZ=UTC -p 8080:80 ubuntu/nginx:1.18-20.04_beta
1714+docker run -d --name nginx-container -e TZ=UTC -p 8080:80 ubuntu/nginx:1.18-21.04_beta
1715 ```
1716 Access your Nginx server at `http://localhost:8080`.
1717
1718@@ -65,7 +71,7 @@ Works with any Kubernetes; if you don't have one, we recommend you [install Micr
1719
1720 Download
1721 [nginx.conf](https://git.launchpad.net/~canonical-server/ubuntu-docker-images/+git/nginx/plain/examples/config/nginx.conf), [index.html](https://git.launchpad.net/~canonical-server/ubuntu-docker-images/+git/nginx/plain/examples/config/html/index.html) and
1722-[nginx-deployment.yml](https://git.launchpad.net/~canonical-server/ubuntu-docker-images/+git/nginx/plain/examples/nginx-deployment.yml) and set `containers.nginx.image` in `nginx-deployment.yml` to your chosen channel tag (e.g. `ubuntu/nginx:1.18-20.04_beta`), then:
1723+[nginx-deployment.yml](https://git.launchpad.net/~canonical-server/ubuntu-docker-images/+git/nginx/plain/examples/nginx-deployment.yml) and set `containers.nginx.image` in `nginx-deployment.yml` to your chosen channel tag (e.g. `ubuntu/nginx:1.18-21.04_beta`), then:
1724
1725 ```sh
1726 kubectl create configmap nginx-config --from-file=nginx=nginx.conf --from-file=nginx-site=index.html
1727@@ -86,3 +92,4 @@ Please title the bug "`nginx: <issue summary>`". Make sure to include the digest
1728 docker images --no-trunc --quiet ubuntu/nginx:<tag>
1729 ```
1730
1731+
1732diff --git a/out/postgres.md b/docs/docker.io/ubuntu/postgres.md
1733similarity index 80%
1734rename from out/postgres.md
1735rename to docs/docker.io/ubuntu/postgres.md
1736index 9092aae..2ca4ef0 100644
1737--- a/out/postgres.md
1738+++ b/docs/docker.io/ubuntu/postgres.md
1739@@ -1,6 +1,7 @@
1740 # Postgres | Ubuntu
1741
1742-Current Postgres Docker Image from Ubuntu. Receives security updates and rolls to newer Postgres or Ubuntu LTS. This repository is exempted from per-user rate limits. For [LTS Docker Image](https://ubuntu.com/security/docker-images) versions of this image, see `lts/postgres`.
1743+Current Postgres Docker Image [from Canonical](https://ubuntu.com/security/docker-images), based on Ubuntu. Receives security updates and rolls to newer Postgres or Ubuntu release. **This repository is free to use and exempted from per-user rate limits.**
1744+<!-- For [LTS Docker Image](https://ubuntu.com/security/docker-images) versions of this image, see `lts/postgres`. -->
1745
1746
1747 ## About Postgres
1748@@ -10,26 +11,31 @@ PostgreSQL is a powerful, open source object-relational database system. It is f
1749
1750 ## Tags and Architectures
1751 ![LTS](https://assets.ubuntu.com/v1/0a5ff561-LTS%402x.png?h=17)
1752-Up to 5 years free security maintenance `from lts/postgres`.
1753+Up to 5 years free security maintenance on LTS channels.
1754+<!-- `from lts/postgres`. -->
1755
1756 ![ESM](https://assets.ubuntu.com/v1/572f3fbd-ESM%402x.png?h=17)
1757-Up to 10 years customer security maintenance `from store/canonical/postgres`.
1758+Up to 10 years customer security maintenance `from canonical/postgres`. [Request access](https://ubuntu.com/security/docker-images#get-in-touch).
1759
1760 _Tags in italics are not available in ubuntu/postgres but are shown here for completeness._
1761
1762-| Channel Tag | | | Currently | Architectures |
1763+| Channel Tag | | | Currently | Architectures |
1764 |---|---|---|---|---|
1765-| **`12.4-20.04_beta`** &nbsp;&nbsp; | | | Postgres 12.4 on Ubuntu 20.04 LTS | `amd64`, `arm64`, `s390x` |
1766+ | **`13.1-21.04_beta`** &nbsp;&nbsp; | | | Postgres 13.1 on Ubuntu&nbsp;21.04&nbsp;| `amd64`, `arm64`, `s390x` |
1767+ | `12.4-20.04_beta` &nbsp;&nbsp; | ![LTS](https://assets.ubuntu.com/v1/0a5ff561-LTS%402x.png?h=17) | | Postgres 12.4 on Ubuntu&nbsp;20.04&nbsp;LTS| `amd64`, `arm64`, `s390x` |
1768 | _`track_risk`_ |
1769
1770-Channel tag shows the most stable channel for that track ordered `stable`, `candidate`, `beta`, `edge`. More risky channels are always implicitly available. So if `beta` is listed, you can also pull `edge`. If `candidate` is listed, you can pull beta and edge. When `stable` is listed, all four are available. Images are guaranteed to progress through the sequence `edge`, `beta`, `candidate` before `stable`.
1771+Channel Tag shows the most stable channel for that track ordered `stable`, `candidate`, `beta`, `edge`. More risky channels are always implicitly available. So if `beta` is listed, you can also pull `edge`. If `candidate` is listed, you can pull `beta` and `edge`. When `stable` is listed, all four are available. Images are guaranteed to progress through the sequence `edge`, `beta`, `candidate` before `stable`.
1772+
1773+### Commercial use and Extended Security Maintenance channels
1774+If your usage includes commercial redistribution or requires unavailable channels/versions, please [get in touch with the Canonical team](https://ubuntu.com/security/docker-images#get-in-touch) (or using rocks@canonical.com).
1775
1776 ## Usage
1777
1778 Launch this image locally:
1779
1780 ```sh
1781-docker run -d --name postgres-container -e TZ=UTC -p 30432:5432 -e POSTGRES_PASSWORD=My:s3Cr3t/ ubuntu/postgres:12.4-20.04_beta
1782+docker run -d --name postgres-container -e TZ=UTC -p 30432:5432 -e POSTGRES_PASSWORD=My:s3Cr3t/ ubuntu/postgres:13.1-21.04_beta
1783 ```
1784 Access your PostgreSQL server at `localhost:30432`.
1785
1786@@ -79,7 +85,7 @@ This image also includes the `psql` client for interactive container use:
1787 ```sh
1788 $ docker network create postgres-network
1789 $ docker network connect postgres-network postgres-container
1790-$ docker run -it --rm --network postgres-network ubuntu/postgres:12.4-20.04_beta psql -h postgres-container -U postgres
1791+$ docker run -it --rm --network postgres-network ubuntu/postgres:13.1-21.04_beta psql -h postgres-container -U postgres
1792 ```
1793 The password will be asked and you can enter `My:s3Cr3t/`. Now, you are logged in and can enjoy your new instance.
1794
1795@@ -89,7 +95,7 @@ Works with any Kubernetes; if you don't have one, we recommend you [install Micr
1796
1797 Download
1798 [postgresql.conf](https://git.launchpad.net/~canonical-server/ubuntu-docker-images/+git/postgresql/plain/examples/config/postgresql.conf) and
1799-[postgres-deployment.yml](https://git.launchpad.net/~canonical-server/ubuntu-docker-images/+git/postgresql/plain/examples/postgres-deployment.yml) and set `containers.postgres.image` in `postgres-deployment.yml` to your chosen channel tag (e.g. `ubuntu/postgres:12.4-20.04_beta`), then:
1800+[postgres-deployment.yml](https://git.launchpad.net/~canonical-server/ubuntu-docker-images/+git/postgresql/plain/examples/postgres-deployment.yml) and set `containers.postgres.image` in `postgres-deployment.yml` to your chosen channel tag (e.g. `ubuntu/postgres:13.1-21.04_beta`), then:
1801
1802 ```sh
1803 kubectl create configmap postgres-config --from-file=main-config=postgresql.conf
1804@@ -110,3 +116,4 @@ Please title the bug "`postgres: <issue summary>`". Make sure to include the dig
1805 docker images --no-trunc --quiet ubuntu/postgres:<tag>
1806 ```
1807
1808+
1809diff --git a/out/prometheus-alertmanager.md b/docs/docker.io/ubuntu/prometheus-alertmanager.md
1810similarity index 77%
1811rename from out/prometheus-alertmanager.md
1812rename to docs/docker.io/ubuntu/prometheus-alertmanager.md
1813index b91d03b..89fa94c 100644
1814--- a/out/prometheus-alertmanager.md
1815+++ b/docs/docker.io/ubuntu/prometheus-alertmanager.md
1816@@ -1,6 +1,7 @@
1817 # Prometheus Alertmanager | Ubuntu
1818
1819-Current Prometheus Alertmanager Docker Image from Ubuntu. Receives security updates and rolls to newer Prometheus Alertmanager or Ubuntu LTS. This repository is exempted from per-user rate limits. For [LTS Docker Image](https://ubuntu.com/security/docker-images) versions of this image, see `lts/prometheus-alertmanager`.
1820+Current Prometheus Alertmanager Docker Image [from Canonical](https://ubuntu.com/security/docker-images), based on Ubuntu. Receives security updates and rolls to newer Prometheus Alertmanager or Ubuntu release. **This repository is free to use and exempted from per-user rate limits.**
1821+<!-- For [LTS Docker Image](https://ubuntu.com/security/docker-images) versions of this image, see `lts/prometheus-alertmanager`. -->
1822
1823
1824 ## About Prometheus Alertmanager
1825@@ -10,26 +11,31 @@ The Alertmanager handles alerts sent by client applications such as the Promethe
1826
1827 ## Tags and Architectures
1828 ![LTS](https://assets.ubuntu.com/v1/0a5ff561-LTS%402x.png?h=17)
1829-Up to 5 years free security maintenance `from lts/prometheus-alertmanager`.
1830+Up to 5 years free security maintenance on LTS channels.
1831+<!-- `from lts/prometheus-alertmanager`. -->
1832
1833 ![ESM](https://assets.ubuntu.com/v1/572f3fbd-ESM%402x.png?h=17)
1834-Up to 10 years customer security maintenance `from store/canonical/prometheus-alertmanager`.
1835+Up to 10 years customer security maintenance `from canonical/prometheus-alertmanager`. [Request access](https://ubuntu.com/security/docker-images#get-in-touch).
1836
1837 _Tags in italics are not available in ubuntu/prometheus-alertmanager but are shown here for completeness._
1838
1839-| Channel Tag | | | Currently | Architectures |
1840+| Channel Tag | | | Currently | Architectures |
1841 |---|---|---|---|---|
1842-| **`0.21-20.04_beta`** &nbsp;&nbsp; | | | Prometheus Alertmanager 0.21.0 on Ubuntu 20.04 LTS | `amd64`, `arm64`, `ppc64el`, `s390x` |
1843+ | **`0.21-21.04_beta`** &nbsp;&nbsp; | | | Prometheus Alertmanager 0.21 on Ubuntu&nbsp;21.04&nbsp;| `amd64`, `arm64`, `ppc64el`, `s390x` |
1844+ | `0.21-20.04_beta` &nbsp;&nbsp; | | | Prometheus Alertmanager 0.21.0 on Ubuntu&nbsp;20.04&nbsp;LTS| `amd64`, `arm64`, `ppc64el`, `s390x` |
1845 | _`track_risk`_ |
1846
1847-Channel tag shows the most stable channel for that track ordered `stable`, `candidate`, `beta`, `edge`. More risky channels are always implicitly available. So if `beta` is listed, you can also pull `edge`. If `candidate` is listed, you can pull beta and edge. When `stable` is listed, all four are available. Images are guaranteed to progress through the sequence `edge`, `beta`, `candidate` before `stable`.
1848+Channel Tag shows the most stable channel for that track ordered `stable`, `candidate`, `beta`, `edge`. More risky channels are always implicitly available. So if `beta` is listed, you can also pull `edge`. If `candidate` is listed, you can pull `beta` and `edge`. When `stable` is listed, all four are available. Images are guaranteed to progress through the sequence `edge`, `beta`, `candidate` before `stable`.
1849+
1850+### Commercial use and Extended Security Maintenance channels
1851+If your usage includes commercial redistribution or requires unavailable channels/versions, please [get in touch with the Canonical team](https://ubuntu.com/security/docker-images#get-in-touch) (or using rocks@canonical.com).
1852
1853 ## Usage
1854
1855 Launch this image locally:
1856
1857 ```sh
1858-docker run -d --name prometheus-alertmanager-container -e TZ=UTC -p 30093:9093 ubuntu/prometheus-alertmanager:0.21-20.04_beta
1859+docker run -d --name prometheus-alertmanager-container -e TZ=UTC -p 30093:9093 ubuntu/prometheus-alertmanager:0.21-21.04_beta
1860 ```
1861 Access your Prometheus Alertmanager server at `localhost:30093`.
1862
1863@@ -64,7 +70,7 @@ Works with any Kubernetes; if you don't have one, we recommend you [install Micr
1864
1865 Download
1866 [alertmanager.yml](https://git.launchpad.net/~canonical-server/ubuntu-docker-images/+git/prometheus-alertmanager/plain/oci/examples/config/alertmanager.yml) and
1867-[prometheus-alertmanager-deployment.yml](https://git.launchpad.net/~canonical-server/ubuntu-docker-images/+git/prometheus-alertmanager/plain/oci/examples/alertmanager-deployment.yml) and set `containers.prometheus-alertmanager.image` in `prometheus-alertmanager-deployment.yml` to your chosen channel tag (e.g. `ubuntu/prometheus-alertmanager:0.21-20.04_beta`), then:
1868+[prometheus-alertmanager-deployment.yml](https://git.launchpad.net/~canonical-server/ubuntu-docker-images/+git/prometheus-alertmanager/plain/oci/examples/alertmanager-deployment.yml) and set `containers.prometheus-alertmanager.image` in `prometheus-alertmanager-deployment.yml` to your chosen channel tag (e.g. `ubuntu/prometheus-alertmanager:0.21-21.04_beta`), then:
1869
1870 ```sh
1871 kubectl create configmap prometheus-alertmanager-config --from-file=alertmanager=alertmanager.yml
1872@@ -85,3 +91,4 @@ Please title the bug "`prometheus-alertmanager: <issue summary>`". Make sure to
1873 docker images --no-trunc --quiet ubuntu/prometheus-alertmanager:<tag>
1874 ```
1875
1876+
1877diff --git a/out/prometheus.md b/docs/docker.io/ubuntu/prometheus.md
1878similarity index 78%
1879rename from out/prometheus.md
1880rename to docs/docker.io/ubuntu/prometheus.md
1881index 66864d0..9bbeb86 100644
1882--- a/out/prometheus.md
1883+++ b/docs/docker.io/ubuntu/prometheus.md
1884@@ -1,6 +1,7 @@
1885 # Prometheus | Ubuntu
1886
1887-Current Prometheus Docker Image from Ubuntu. Receives security updates and rolls to newer Prometheus or Ubuntu LTS. This repository is exempted from per-user rate limits. For [LTS Docker Image](https://ubuntu.com/security/docker-images) versions of this image, see `lts/prometheus`.
1888+Current Prometheus Docker Image [from Canonical](https://ubuntu.com/security/docker-images), based on Ubuntu. Receives security updates and rolls to newer Prometheus or Ubuntu release. **This repository is free to use and exempted from per-user rate limits.**
1889+<!-- For [LTS Docker Image](https://ubuntu.com/security/docker-images) versions of this image, see `lts/prometheus`. -->
1890
1891
1892 ## About Prometheus
1893@@ -10,26 +11,31 @@ Prometheus is a systems and service monitoring system. It collects metrics from
1894
1895 ## Tags and Architectures
1896 ![LTS](https://assets.ubuntu.com/v1/0a5ff561-LTS%402x.png?h=17)
1897-Up to 5 years free security maintenance `from lts/prometheus`.
1898+Up to 5 years free security maintenance on LTS channels.
1899+<!-- `from lts/prometheus`. -->
1900
1901 ![ESM](https://assets.ubuntu.com/v1/572f3fbd-ESM%402x.png?h=17)
1902-Up to 10 years customer security maintenance `from store/canonical/prometheus`.
1903+Up to 10 years customer security maintenance `from canonical/prometheus`. [Request access](https://ubuntu.com/security/docker-images#get-in-touch).
1904
1905 _Tags in italics are not available in ubuntu/prometheus but are shown here for completeness._
1906
1907-| Channel Tag | | | Currently | Architectures |
1908+| Channel Tag | | | Currently | Architectures |
1909 |---|---|---|---|---|
1910-| **`2.20-20.04_beta`** &nbsp;&nbsp; | | | Prometheus 2.20.1 on Ubuntu 20.04 LTS | `amd64`, `arm64`, `ppc64el`, `s390x` |
1911+ | **`2.25-21.04_beta`** &nbsp;&nbsp; | | | Prometheus 2.25 on Ubuntu&nbsp;21.04&nbsp;| `amd64`, `arm64`, `ppc64el`, `s390x` |
1912+ | `2.20-20.04_beta` &nbsp;&nbsp; | | | Prometheus 2.20.1 on Ubuntu&nbsp;20.04&nbsp;LTS| `amd64`, `arm64`, `ppc64el`, `s390x` |
1913 | _`track_risk`_ |
1914
1915-Channel tag shows the most stable channel for that track ordered `stable`, `candidate`, `beta`, `edge`. More risky channels are always implicitly available. So if `beta` is listed, you can also pull `edge`. If `candidate` is listed, you can pull beta and edge. When `stable` is listed, all four are available. Images are guaranteed to progress through the sequence `edge`, `beta`, `candidate` before `stable`.
1916+Channel Tag shows the most stable channel for that track ordered `stable`, `candidate`, `beta`, `edge`. More risky channels are always implicitly available. So if `beta` is listed, you can also pull `edge`. If `candidate` is listed, you can pull `beta` and `edge`. When `stable` is listed, all four are available. Images are guaranteed to progress through the sequence `edge`, `beta`, `candidate` before `stable`.
1917+
1918+### Commercial use and Extended Security Maintenance channels
1919+If your usage includes commercial redistribution or requires unavailable channels/versions, please [get in touch with the Canonical team](https://ubuntu.com/security/docker-images#get-in-touch) (or using rocks@canonical.com).
1920
1921 ## Usage
1922
1923 Launch this image locally:
1924
1925 ```sh
1926-docker run -d --name prometheus-container -e TZ=UTC -p 30090:9090 ubuntu/prometheus:2.20-20.04_beta
1927+docker run -d --name prometheus-container -e TZ=UTC -p 30090:9090 ubuntu/prometheus:2.25-21.04_beta
1928 ```
1929 Access your Prometheus server at `localhost:30090`.
1930
1931@@ -64,7 +70,7 @@ Works with any Kubernetes; if you don't have one, we recommend you [install Micr
1932
1933 Download
1934 [prometheus.yml](https://git.launchpad.net/~canonical-server/ubuntu-docker-images/+git/prometheus/plain/oci/examples/config/prometheus.yml), [alerts.yml](https://git.launchpad.net/~canonical-server/ubuntu-docker-images/+git/prometheus/plain/oci/examples/config/alerts.yml) and
1935-[prometheus-deployment.yml](https://git.launchpad.net/~canonical-server/ubuntu-docker-images/+git/prometheus/plain/oci/examples/prometheus-deployment.yml) and set `containers.prometheus.image` in `prometheus-deployment.yml` to your chosen channel tag (e.g. `ubuntu/prometheus:2.20-20.04_beta`), then:
1936+[prometheus-deployment.yml](https://git.launchpad.net/~canonical-server/ubuntu-docker-images/+git/prometheus/plain/oci/examples/prometheus-deployment.yml) and set `containers.prometheus.image` in `prometheus-deployment.yml` to your chosen channel tag (e.g. `ubuntu/prometheus:2.25-21.04_beta`), then:
1937
1938 ```sh
1939 kubectl create configmap prometheus-config --from-file=prometheus=prometheus.yml --from-file=prometheus-alerts=alerts.yml
1940@@ -85,3 +91,4 @@ Please title the bug "`prometheus: <issue summary>`". Make sure to include the d
1941 docker images --no-trunc --quiet ubuntu/prometheus:<tag>
1942 ```
1943
1944+
1945diff --git a/out/redis.md b/docs/docker.io/ubuntu/redis.md
1946similarity index 80%
1947rename from out/redis.md
1948rename to docs/docker.io/ubuntu/redis.md
1949index 9ef5a36..052a0c1 100644
1950--- a/out/redis.md
1951+++ b/docs/docker.io/ubuntu/redis.md
1952@@ -1,35 +1,41 @@
1953-# Redis | Ubuntu
1954+# Redis™ software | Ubuntu
1955
1956-Current Redis Docker Image from Ubuntu. Receives security updates and rolls to newer Redis or Ubuntu LTS. This repository is exempted from per-user rate limits. For [LTS Docker Image](https://ubuntu.com/security/docker-images) versions of this image, see `lts/redis`.
1957+Current Redis™ software Docker Image [from Canonical](https://ubuntu.com/security/docker-images), based on Ubuntu. Receives security updates and rolls to newer Redis™ software or Ubuntu release. **This repository is free to use and exempted from per-user rate limits.**
1958+<!-- For [LTS Docker Image](https://ubuntu.com/security/docker-images) versions of this image, see `lts/redis`. -->
1959
1960
1961-## About Redis
1962+## About Redis™ software
1963
1964 Redis is an open source (BSD licensed), in-memory data structure store, used as a database, cache and message broker. It supports data structures such as strings, hashes, lists, sets, sorted sets with range queries, bitmaps, hyperloglogs, geospatial indexes with radius queries and streams. Redis has built-in replication, Lua scripting, LRU eviction, transactions and different levels of on-disk persistence, and provides high availability via Redis Sentinel and automatic partitioning with Redis Cluster. Read more on the [Redis website](https://redis.io/topics/introduction).
1965
1966
1967 ## Tags and Architectures
1968 ![LTS](https://assets.ubuntu.com/v1/0a5ff561-LTS%402x.png?h=17)
1969-Up to 5 years free security maintenance `from lts/redis`.
1970+Up to 5 years free security maintenance on LTS channels.
1971+<!-- `from lts/redis`. -->
1972
1973 ![ESM](https://assets.ubuntu.com/v1/572f3fbd-ESM%402x.png?h=17)
1974-Up to 10 years customer security maintenance `from store/canonical/redis`.
1975+Up to 10 years customer security maintenance `from canonical/redis`. [Request access](https://ubuntu.com/security/docker-images#get-in-touch).
1976
1977 _Tags in italics are not available in ubuntu/redis but are shown here for completeness._
1978
1979-| Channel Tag | | | Currently | Architectures |
1980+| Channel Tag | | | Currently | Architectures |
1981 |---|---|---|---|---|
1982-| **`5.0-20.04_beta`** &nbsp;&nbsp; | | | Redis 5.0.7 on Ubuntu 20.04 LTS | `amd64`, `arm64`, `ppc64el`, `s390x` |
1983+ | **`6.0-21.04_beta`** &nbsp;&nbsp; | | | Redis™ software 6.0 on Ubuntu&nbsp;21.04&nbsp;| `amd64`, `arm64`, `ppc64el`, `s390x` |
1984+ | `5.0-20.04_beta` &nbsp;&nbsp; | | | Redis™ software 5.0.7 on Ubuntu&nbsp;20.04&nbsp;LTS| `amd64`, `arm64`, `ppc64el`, `s390x` |
1985 | _`track_risk`_ |
1986
1987-Channel tag shows the most stable channel for that track ordered `stable`, `candidate`, `beta`, `edge`. More risky channels are always implicitly available. So if `beta` is listed, you can also pull `edge`. If `candidate` is listed, you can pull beta and edge. When `stable` is listed, all four are available. Images are guaranteed to progress through the sequence `edge`, `beta`, `candidate` before `stable`.
1988+Channel Tag shows the most stable channel for that track ordered `stable`, `candidate`, `beta`, `edge`. More risky channels are always implicitly available. So if `beta` is listed, you can also pull `edge`. If `candidate` is listed, you can pull `beta` and `edge`. When `stable` is listed, all four are available. Images are guaranteed to progress through the sequence `edge`, `beta`, `candidate` before `stable`.
1989+
1990+### Commercial use and Extended Security Maintenance channels
1991+If your usage includes commercial redistribution or requires unavailable channels/versions, please [get in touch with the Canonical team](https://ubuntu.com/security/docker-images#get-in-touch) (or using rocks@canonical.com).
1992
1993 ## Usage
1994
1995 Launch this image locally:
1996
1997 ```sh
1998-docker run -d --name redis-container -e TZ=UTC -p 30073:6379 -e REDIS_PASSWORD=mypassword ubuntu/redis:5.0-20.04_beta
1999+docker run -d --name redis-container -e TZ=UTC -p 30073:6379 -e REDIS_PASSWORD=mypassword ubuntu/redis:6.0-21.04_beta
2000 ```
2001 Access your Redis server at `localhost:30073`.
2002
2003@@ -66,7 +72,7 @@ This image also includes the `redis-cli` client for interactive container use:
2004 ```sh
2005 $ docker network create redis-network
2006 $ docker network connect redis-network redis-container
2007-$ docker run -it --rm --network redis-network ubuntu/redis:5.0-20.04_beta redis-cli -h redis-container
2008+$ docker run -it --rm --network redis-network ubuntu/redis:6.0-21.04_beta redis-cli -h redis-container
2009 ```
2010 Now you can:
2011 ```
2012@@ -84,7 +90,7 @@ Works with any Kubernetes; if you don't have one, we recommend you [install Micr
2013
2014 Download
2015 [redis.conf](https://git.launchpad.net/~canonical-server/ubuntu-docker-images/+git/redis/plain/examples/config/redis.conf) and
2016-[redis-deployment.yml](https://git.launchpad.net/~canonical-server/ubuntu-docker-images/+git/redis/plain/examples/redis-deployment.yml) and set `containers.redis.image` in `redis-deployment.yml` to your chosen channel tag (e.g. `ubuntu/redis:5.0-20.04_beta`), then:
2017+[redis-deployment.yml](https://git.launchpad.net/~canonical-server/ubuntu-docker-images/+git/redis/plain/examples/redis-deployment.yml) and set `containers.redis.image` in `redis-deployment.yml` to your chosen channel tag (e.g. `ubuntu/redis:6.0-21.04_beta`), then:
2018
2019 ```sh
2020 kubectl create configmap redis-config --from-file=redis=redis.conf
2021@@ -105,3 +111,4 @@ Please title the bug "`redis: <issue summary>`". Make sure to include the digest
2022 docker images --no-trunc --quiet ubuntu/redis:<tag>
2023 ```
2024
2025+
2026diff --git a/docs/docker.io/ubuntu/squid.md b/docs/docker.io/ubuntu/squid.md
2027new file mode 100644
2028index 0000000..0e26afa
2029--- /dev/null
2030+++ b/docs/docker.io/ubuntu/squid.md
2031@@ -0,0 +1,94 @@
2032+# Squid | Ubuntu
2033+
2034+Current Squid Docker Image [from Canonical](https://ubuntu.com/security/docker-images), based on Ubuntu. Receives security updates and rolls to newer Squid or Ubuntu release. **This repository is free to use and exempted from per-user rate limits.**
2035+<!-- For [LTS Docker Image](https://ubuntu.com/security/docker-images) versions of this image, see `lts/squid`. -->
2036+
2037+
2038+## About Squid
2039+
2040+Squid is a caching proxy for the Web supporting HTTP, HTTPS, FTP, and more. It reduces bandwidth and improves response times by caching and reusing frequently-requested web pages. Squid has extensive access controls and makes a great server accelerator. It runs on most available operating systems, including Windows and is licensed under the GNU GPL.
2041+
2042+
2043+## Tags and Architectures
2044+![LTS](https://assets.ubuntu.com/v1/0a5ff561-LTS%402x.png?h=17)
2045+Up to 5 years free security maintenance on LTS channels.
2046+<!-- `from lts/squid`. -->
2047+
2048+![ESM](https://assets.ubuntu.com/v1/572f3fbd-ESM%402x.png?h=17)
2049+Up to 10 years customer security maintenance `from canonical/squid`. [Request access](https://ubuntu.com/security/docker-images#get-in-touch).
2050+
2051+_Tags in italics are not available in ubuntu/squid but are shown here for completeness._
2052+
2053+| Channel Tag | | | Currently | Architectures |
2054+|---|---|---|---|---|
2055+ | **`4.10-20.04_beta`** &nbsp;&nbsp; | ![LTS](https://assets.ubuntu.com/v1/0a5ff561-LTS%402x.png?h=17) | | Squid 4.10 on Ubuntu&nbsp;20.04&nbsp;LTS| `amd64`, `arm64`, `ppc64el`, `s390x` |
2056+ | `4.13-21.10_edge` &nbsp;&nbsp; | | | Squid 4.13 on Ubuntu&nbsp;21.10&nbsp;| `amd64`, `arm64`, `ppc64el`, `s390x` |
2057+| _`track_risk`_ |
2058+
2059+Channel Tag shows the most stable channel for that track ordered `stable`, `candidate`, `beta`, `edge`. More risky channels are always implicitly available. So if `beta` is listed, you can also pull `edge`. If `candidate` is listed, you can pull `beta` and `edge`. When `stable` is listed, all four are available. Images are guaranteed to progress through the sequence `edge`, `beta`, `candidate` before `stable`.
2060+
2061+### Commercial use and Extended Security Maintenance channels
2062+If your usage includes commercial redistribution or requires unavailable channels/versions, please [get in touch with the Canonical team](https://ubuntu.com/security/docker-images#get-in-touch) (or using rocks@canonical.com).
2063+
2064+## Usage
2065+
2066+Launch this image locally:
2067+
2068+```sh
2069+docker run -d --name squid-container -e TZ=UTC -p 3128:3128 ubuntu/squid:4.10-20.04_beta
2070+```
2071+Access your Squid proxy at `localhost:3128`.
2072+
2073+#### Parameters
2074+
2075+| Parameter | Description |
2076+|---|---|
2077+| `-e TZ=UTC` | Timezone. |
2078+| `-p 3128:3128` | Expose the proxy service |
2079+| `-v /path/to/logs:/var/log/squid` | Volume to store squid logs |
2080+| `-v /path/to/data:/var/spool/squid` | Volume to store the squid cache |
2081+
2082+
2083+#### Testing/Debugging
2084+
2085+To debug the container:
2086+
2087+```sh
2088+docker logs -f squid-container
2089+```
2090+
2091+To get an interactive shell:
2092+
2093+```sh
2094+docker exec -it squid-container /bin/bash
2095+```
2096+
2097+
2098+## Deploy with Kubernetes
2099+
2100+Works with any Kubernetes; if you don't have one, we recommend you [install MicroK8s](https://microk8s.io/) and `microk8s.enable dns storage` then `snap alias microk8s.kubectl kubectl`.
2101+
2102+Download
2103+[squid.conf](https://git.launchpad.net/~canonical-server/ubuntu-docker-images/+git/squid/plain/examples/config/squid.conf) and
2104+[squid-deployment.yml](https://git.launchpad.net/~canonical-server/ubuntu-docker-images/+git/squid/plain/examples/squid-deployment.yml) and set `containers.squid.image` in `squid-deployment.yml` to your chosen channel tag (e.g. `ubuntu/squid:4.10-20.04_beta`), then:
2105+
2106+```sh
2107+kubectl create configmap squid-config --from-file=squid=squid.conf
2108+kubectl apply -f squid-deployment.yml
2109+```
2110+
2111+You can now access the squid proxy on port 3128
2112+
2113+## Bugs and feature requests
2114+
2115+If you find a bug in our image or want to request a specific feature, please file a bug here:
2116+
2117+[https://bugs.launchpad.net/ubuntu-docker-images/+filebug](https://bugs.launchpad.net/ubuntu-docker-images/+filebug)
2118+
2119+Please title the bug "`squid: <issue summary>`". Make sure to include the digest of the image you are using, from:
2120+
2121+```sh
2122+docker images --no-trunc --quiet ubuntu/squid:<tag>
2123+```
2124+
2125+
2126diff --git a/out/telegraf.md b/docs/docker.io/ubuntu/telegraf.md
2127similarity index 74%
2128rename from out/telegraf.md
2129rename to docs/docker.io/ubuntu/telegraf.md
2130index 75787de..614b5b6 100644
2131--- a/out/telegraf.md
2132+++ b/docs/docker.io/ubuntu/telegraf.md
2133@@ -1,35 +1,41 @@
2134-# Telegraf | Ubuntu
2135+# Telegraf™ software | Ubuntu
2136
2137-Current Telegraf Docker Image from Ubuntu. Receives security updates and rolls to newer Telegraf or Ubuntu LTS. This repository is exempted from per-user rate limits. For [LTS Docker Image](https://ubuntu.com/security/docker-images) versions of this image, see `lts/telegraf`.
2138+Current Telegraf™ software Docker Image [from Canonical](https://ubuntu.com/security/docker-images), based on Ubuntu. Receives security updates and rolls to newer Telegraf™ software or Ubuntu release. **This repository is free to use and exempted from per-user rate limits.**
2139+<!-- For [LTS Docker Image](https://ubuntu.com/security/docker-images) versions of this image, see `lts/telegraf`. -->
2140
2141
2142-## About Telegraf
2143+## About Telegraf™ software
2144
2145 Telegraf is an agent for collecting, processing, aggregating, and writing metrics. Design goals are to have a minimal memory footprint with a plugin system so that developers in the community can easily add support for collecting metrics. Read more on the [Telegraf website](https://www.influxdata.com/time-series-platform/telegraf/).
2146
2147
2148 ## Tags and Architectures
2149 ![LTS](https://assets.ubuntu.com/v1/0a5ff561-LTS%402x.png?h=17)
2150-Up to 5 years free security maintenance `from lts/telegraf`.
2151+Up to 5 years free security maintenance on LTS channels.
2152+<!-- `from lts/telegraf`. -->
2153
2154 ![ESM](https://assets.ubuntu.com/v1/572f3fbd-ESM%402x.png?h=17)
2155-Up to 10 years customer security maintenance `from store/canonical/telegraf`.
2156+Up to 10 years customer security maintenance `from canonical/telegraf`. [Request access](https://ubuntu.com/security/docker-images#get-in-touch).
2157
2158 _Tags in italics are not available in ubuntu/telegraf but are shown here for completeness._
2159
2160-| Channel Tag | | | Currently | Architectures |
2161+| Channel Tag | | | Currently | Architectures |
2162 |---|---|---|---|---|
2163-| **`1.15-20.04_beta`** &nbsp;&nbsp; | | | Telegraf 1.15.2 on Ubuntu 20.04 LTS | `amd64`, `arm64`, `ppc64el`, `s390x` |
2164+ | **`1.17-21.04_beta`** &nbsp;&nbsp; | | | Telegraf™ software 1.17 on Ubuntu&nbsp;21.04&nbsp;| `amd64`, `arm64`, `ppc64el`, `s390x` |
2165+ | `1.15-20.04_beta` &nbsp;&nbsp; | | | Telegraf™ software 1.15.2 on Ubuntu&nbsp;20.04&nbsp;LTS| `amd64`, `arm64`, `ppc64el`, `s390x` |
2166 | _`track_risk`_ |
2167
2168-Channel tag shows the most stable channel for that track ordered `stable`, `candidate`, `beta`, `edge`. More risky channels are always implicitly available. So if `beta` is listed, you can also pull `edge`. If `candidate` is listed, you can pull beta and edge. When `stable` is listed, all four are available. Images are guaranteed to progress through the sequence `edge`, `beta`, `candidate` before `stable`.
2169+Channel Tag shows the most stable channel for that track ordered `stable`, `candidate`, `beta`, `edge`. More risky channels are always implicitly available. So if `beta` is listed, you can also pull `edge`. If `candidate` is listed, you can pull `beta` and `edge`. When `stable` is listed, all four are available. Images are guaranteed to progress through the sequence `edge`, `beta`, `candidate` before `stable`.
2170+
2171+### Commercial use and Extended Security Maintenance channels
2172+If your usage includes commercial redistribution or requires unavailable channels/versions, please [get in touch with the Canonical team](https://ubuntu.com/security/docker-images#get-in-touch) (or using rocks@canonical.com).
2173
2174 ## Usage
2175
2176 Launch this image locally:
2177
2178 ```sh
2179-docker run -d --name telegraf-container -e TZ=UTC -p 30273:9273 ubuntu/telegraf:1.15-20.04_beta
2180+docker run -d --name telegraf-container -e TZ=UTC -p 30273:9273 ubuntu/telegraf:1.17-21.04_beta
2181 ```
2182 Access your Telegraf server at `localhost:30273`.
2183
2184@@ -63,7 +69,7 @@ Works with any Kubernetes; if you don't have one, we recommend you [install Micr
2185
2186 Download
2187 [telegraf.conf](https://git.launchpad.net/~canonical-server/ubuntu-docker-images/+git/telegraf/plain/examples/config/telegraf.conf) and
2188-[telegraf-deployment.yml](https://git.launchpad.net/~canonical-server/ubuntu-docker-images/+git/telegraf/plain/examples/telegraf-deployment.yml) and set `containers.telegraf.image` in `telegraf-deployment.yml` to your chosen channel tag (e.g. `ubuntu/telegraf:1.15-20.04_beta`), then:
2189+[telegraf-deployment.yml](https://git.launchpad.net/~canonical-server/ubuntu-docker-images/+git/telegraf/plain/examples/telegraf-deployment.yml) and set `containers.telegraf.image` in `telegraf-deployment.yml` to your chosen channel tag (e.g. `ubuntu/telegraf:1.17-21.04_beta`), then:
2190
2191 ```sh
2192 kubectl create configmap telegraf-config --from-file=main-config=telegraf.conf
2193@@ -84,3 +90,4 @@ Please title the bug "`telegraf: <issue summary>`". Make sure to include the dig
2194 docker images --no-trunc --quiet ubuntu/telegraf:<tag>
2195 ```
2196
2197+
2198diff --git a/out-lts/apache2.md b/docs/public.ecr.aws/lts/apache2.md
2199similarity index 78%
2200rename from out-lts/apache2.md
2201rename to docs/public.ecr.aws/lts/apache2.md
2202index 743c3b2..8dcac7e 100644
2203--- a/out-lts/apache2.md
2204+++ b/docs/public.ecr.aws/lts/apache2.md
2205@@ -1,8 +1,8 @@
2206 # Apache2 LTS Docker Image
2207+
2208
2209 ## LTS Docker Image Portfolio
2210-The [LTS Docker Image Portfolio](https://ubuntu.com/security/docker-images) are consistent, compliant, minimal and secure images with Extended Security Maintenance (ESM) commitments from Canonical. This repository is exempted from per-user rate limits.
2211-
2212+The [LTS Docker Image Portfolio](https://ubuntu.com/security/docker-images) are consistent, compliant, minimal and secure images with Extended Security Maintenance (ESM) commitments from Canonical.
2213
2214 ## About Apache2
2215
2216@@ -11,28 +11,32 @@ The Apache HTTP Server Project's goal is to build a secure, efficient and extens
2217
2218 ## Tags and Architectures
2219 ![LTS](https://assets.ubuntu.com/v1/0a5ff561-LTS%402x.png?h=17)
2220-Up to 5 years free security maintenance `from lts/apache2`.
2221+Up to 5 years free security maintenance from this repository.
2222
2223 ![ESM](https://assets.ubuntu.com/v1/572f3fbd-ESM%402x.png?h=17)
2224-Up to 10 years customer security maintenance `from store/canonical/apache2`.
2225+Up to 10 years customer security maintenance `from canonical/apache2`. [Request access](https://ubuntu.com/security/docker-images#get-in-touch).
2226
2227-_Tags in italics are not available in lts/apache2 but are shown here for completeness._
2228+<!-- _Tags in italics are not available in public.ecr.aws/lts/apache2 but are shown here for completeness._ -->
2229
2230 | Channel Tag | ![LTS](https://assets.ubuntu.com/v1/0a5ff561-LTS%402x.png?h=17) until | ![ESM](https://assets.ubuntu.com/v1/572f3fbd-ESM%402x.png?h=17) until | Currently | Architectures |
2231 |---|---|---|---|---|
2232-| **`2.4-20.04_beta`** &nbsp;&nbsp; | - | - | Apache2 2.4.41 | `amd64`, `arm64`, `ppc64el`, `s390x` |
2233+ | **`2.4-20.04_beta`** &nbsp;&nbsp; | - | - | Apache2 2.4.41 on Ubuntu&nbsp;20.04&nbsp;LTS| `amd64`, `arm64`, `ppc64el`, `s390x` |
2234 | _`track_risk`_ |
2235
2236-Channel tag shows the most stable channel for that track ordered `stable`, `candidate`, `beta`, `edge`. More risky channels are always implicitly available. So if `beta` is listed, you can also pull `edge`. If `candidate` is listed, you can pull beta and edge. When `stable` is listed, all four are available. Images are guaranteed to progress through the sequence `edge`, `beta`, `candidate` before `stable`.
2237+Channel Tag shows the most stable channel for that track ordered `stable`, `candidate`, `beta`, `edge`. More risky channels are always implicitly available. So if `beta` is listed, you can also pull `edge`. If `candidate` is listed, you can pull `beta` and `edge`. When `stable` is listed, all four are available. Images are guaranteed to progress through the sequence `edge`, `beta`, `candidate` before `stable`.
2238+
2239+### Commercial use and Extended Security Maintenance channels
2240+If your usage includes redistribution or requires unavailable channels/versions, please [get in touch with the Canonical team](https://ubuntu.com/security/docker-images#get-in-touch) (or using rocks@canonical.com).
2241
2242-## Usage
2243
2244 If your usage includes redistribution, please [contact Canonical](https://ubuntu.com/security/docker-images#get-in-touch).
2245
2246+## Docker CLI
2247+
2248 Launch this image locally:
2249
2250 ```sh
2251-docker run -d --name apache2-container -e TZ=UTC -p 8080:80 lts/apache2:2.4-20.04_beta
2252+docker run -d --name apache2-container -e TZ=UTC -p 8080:80 public.ecr.aws/lts/apache2:2.4-20.04_beta
2253 ```
2254 Access your Apache2 server at `http://localhost:8080`.
2255
2256@@ -67,7 +71,7 @@ Works with any Kubernetes; if you don't have one, we recommend you [install Micr
2257
2258 Download
2259 [apache2.conf](https://git.launchpad.net/~canonical-server/ubuntu-docker-images/+git/apache2/plain/examples/config/apache2.conf), [index.html](https://git.launchpad.net/~canonical-server/ubuntu-docker-images/+git/apache2/plain/examples/config/html/index.html) and
2260-[apache2-deployment.yml](https://git.launchpad.net/~canonical-server/ubuntu-docker-images/+git/apache2/plain/examples/apache2-deployment.yml) and set `containers.apache2.image` in `apache2-deployment.yml` to your chosen channel tag (e.g. `lts/apache2:2.4-20.04_beta`), then:
2261+[apache2-deployment.yml](https://git.launchpad.net/~canonical-server/ubuntu-docker-images/+git/apache2/plain/examples/apache2-deployment.yml) and set `containers.apache2.image` in `apache2-deployment.yml` to your chosen channel tag (e.g. `public.ecr.aws/lts/apache2:2.4-20.04_beta`), then:
2262
2263 ```sh
2264 kubectl create configmap apache2-config --from-file=apache2=apache2.conf --from-file=apache2-site=index.html
2265@@ -85,6 +89,6 @@ If you find a bug in our image or want to request a specific feature, please fil
2266 Please title the bug "`apache2: <issue summary>`". Make sure to include the digest of the image you are using, from:
2267
2268 ```sh
2269-docker images --no-trunc --quiet lts/apache2:<tag>
2270+docker images --no-trunc --quiet public.ecr.aws/lts/apache2:<tag>
2271 ```
2272
2273diff --git a/docs/public.ecr.aws/lts/bind9.md b/docs/public.ecr.aws/lts/bind9.md
2274new file mode 100644
2275index 0000000..b53c2a8
2276--- /dev/null
2277+++ b/docs/public.ecr.aws/lts/bind9.md
2278@@ -0,0 +1,93 @@
2279+# Bind9 LTS Docker Image
2280+
2281+
2282+## LTS Docker Image Portfolio
2283+The [LTS Docker Image Portfolio](https://ubuntu.com/security/docker-images) are consistent, compliant, minimal and secure images with Extended Security Maintenance (ESM) commitments from Canonical.
2284+
2285+## About Bind9
2286+
2287+BIND 9 provides software for Domain Name System (DNS) management including both defining domain names authoritatively for a given DNS zone, and recursively resolving domain names to their IP addresses. In addition to BIND 9's DNS server itself, `named`, this container also includes tools for performing DNS queries and dynamic updates. Read more on the [BIND 9 website](https://www.isc.org/bind/).
2288+
2289+
2290+## Tags and Architectures
2291+![LTS](https://assets.ubuntu.com/v1/0a5ff561-LTS%402x.png?h=17)
2292+Up to 5 years free security maintenance from this repository.
2293+
2294+![ESM](https://assets.ubuntu.com/v1/572f3fbd-ESM%402x.png?h=17)
2295+Up to 10 years customer security maintenance `from canonical/bind9`. [Request access](https://ubuntu.com/security/docker-images#get-in-touch).
2296+
2297+<!-- _Tags in italics are not available in public.ecr.aws/lts/bind9 but are shown here for completeness._ -->
2298+
2299+| Channel Tag | ![LTS](https://assets.ubuntu.com/v1/0a5ff561-LTS%402x.png?h=17) until | ![ESM](https://assets.ubuntu.com/v1/572f3fbd-ESM%402x.png?h=17) until | Currently | Architectures |
2300+|---|---|---|---|---|
2301+ | **`9.16-20.04_beta`** &nbsp;&nbsp; | - | - | Bind9 9.16.15 on Ubuntu&nbsp;20.04&nbsp;LTS| `amd64`, `arm64`, `ppc64el`, `s390x` |
2302+| _`track_risk`_ |
2303+
2304+Channel Tag shows the most stable channel for that track ordered `stable`, `candidate`, `beta`, `edge`. More risky channels are always implicitly available. So if `beta` is listed, you can also pull `edge`. If `candidate` is listed, you can pull `beta` and `edge`. When `stable` is listed, all four are available. Images are guaranteed to progress through the sequence `edge`, `beta`, `candidate` before `stable`.
2305+
2306+### Commercial use and Extended Security Maintenance channels
2307+If your usage includes redistribution or requires unavailable channels/versions, please [get in touch with the Canonical team](https://ubuntu.com/security/docker-images#get-in-touch) (or using rocks@canonical.com).
2308+
2309+
2310+If your usage includes redistribution, please [contact Canonical](https://ubuntu.com/security/docker-images#get-in-touch).
2311+
2312+## Docker CLI
2313+
2314+Launch this image locally:
2315+
2316+```sh
2317+docker run -d --name bind9-container -e TZ=UTC -p 30053:53 public.ecr.aws/lts/bind9:9.16-20.04_beta
2318+```
2319+Access your Bind9 server at `localhost:30053`
2320+
2321+#### Parameters
2322+
2323+| Parameter | Description |
2324+|---|---|
2325+| `-e TZ=UTC` | Timezone. |
2326+| `-p 1803233` | Expose bind9 on `localhost:30053`. |
2327+| `-v /path/to/bind/configuration:/etc/bind/named.conf` | Local [configuration file](https://bind9.readthedocs.io/en/latest/reference.html) `named.conf` (try [this example](https://git.launchpad.net/~canonical-server/ubuntu-docker-images/+git/bind9/plain/examples/caching-nameserver/named.conf.options)). |
2328+| `-v /path/to/cached/data:/var/cache/bind` | Location where locally cached data can be dumped. |
2329+| `-v /path/to/resource/records:/var/lib/bind` | Location of Resource Records defining various domain information. |
2330+
2331+
2332+#### Testing/Debugging
2333+
2334+To debug the container:
2335+
2336+```sh
2337+docker logs -f bind9-container
2338+```
2339+
2340+To get an interactive shell:
2341+
2342+```sh
2343+docker exec -it bind9-container /bin/bash
2344+```
2345+
2346+
2347+## Deploy with Kubernetes
2348+
2349+Works with any Kubernetes; if you don't have one, we recommend you [install MicroK8s](https://microk8s.io/) and `microk8s.enable dns storage` then `snap alias microk8s.kubectl kubectl`.
2350+
2351+Download
2352+[bind9-deployment.yml](https://git.launchpad.net/~canonical-server/ubuntu-docker-images/+git/bind9/plain/examples/bind9-deployment.yml) and set `containers.bind9.image` in `bind9-deployment.yml` to your chosen channel tag (e.g. `public.ecr.aws/lts/bind9:9.16-20.04_beta`), then:
2353+
2354+```sh
2355+kubectl apply -f bind9-deployment.yml
2356+```
2357+
2358+You will now be able to connect to the Bind9 server on localhost:30053`.
2359+
2360+## Bugs and feature requests
2361+
2362+If you find a bug in our image or want to request a specific feature, please file a bug here:
2363+
2364+[https://bugs.launchpad.net/ubuntu-docker-images/+filebug](https://bugs.launchpad.net/ubuntu-docker-images/+filebug)
2365+
2366+Please title the bug "`bind9: <issue summary>`". Make sure to include the digest of the image you are using, from:
2367+
2368+```sh
2369+docker images --no-trunc --quiet public.ecr.aws/lts/bind9:<tag>
2370+```
2371+
2372diff --git a/docs/public.ecr.aws/lts/cassandra.md b/docs/public.ecr.aws/lts/cassandra.md
2373new file mode 100644
2374index 0000000..0b9303e
2375--- /dev/null
2376+++ b/docs/public.ecr.aws/lts/cassandra.md
2377@@ -0,0 +1,95 @@
2378+# Cassandra LTS Docker Image
2379+ **This repository has no LTS channel yet, please [get in touch](https://ubuntu.com/security/docker-images#get-in-touch) if you need one.**
2380+
2381+## LTS Docker Image Portfolio
2382+The [LTS Docker Image Portfolio](https://ubuntu.com/security/docker-images) are consistent, compliant, minimal and secure images with Extended Security Maintenance (ESM) commitments from Canonical.
2383+
2384+## About Cassandra
2385+
2386+Apache Cassandra is an open source NoSQL distributed database trusted by thousands of companies for scalability and high availability without compromising performance. Linear scalability and proven fault-tolerance on commodity hardware or cloud infrastructure make it a good platform for mission-critical data.
2387+
2388+
2389+## Tags and Architectures
2390+![LTS](https://assets.ubuntu.com/v1/0a5ff561-LTS%402x.png?h=17)
2391+Up to 5 years free security maintenance from this repository.
2392+
2393+![ESM](https://assets.ubuntu.com/v1/572f3fbd-ESM%402x.png?h=17)
2394+Up to 10 years customer security maintenance `from canonical/cassandra`. [Request access](https://ubuntu.com/security/docker-images#get-in-touch).
2395+
2396+<!-- _Tags in italics are not available in public.ecr.aws/lts/cassandra but are shown here for completeness._ -->
2397+
2398+| Channel Tag | ![LTS](https://assets.ubuntu.com/v1/0a5ff561-LTS%402x.png?h=17) until | ![ESM](https://assets.ubuntu.com/v1/572f3fbd-ESM%402x.png?h=17) until | Currently | Architectures |
2399+|---|---|---|---|---|
2400+| _`track_risk`_ |
2401+
2402+Channel Tag shows the most stable channel for that track ordered `stable`, `candidate`, `beta`, `edge`. More risky channels are always implicitly available. So if `beta` is listed, you can also pull `edge`. If `candidate` is listed, you can pull `beta` and `edge`. When `stable` is listed, all four are available. Images are guaranteed to progress through the sequence `edge`, `beta`, `candidate` before `stable`.
2403+
2404+### Commercial use and Extended Security Maintenance channels
2405+If your usage includes redistribution or requires unavailable channels/versions, please [get in touch with the Canonical team](https://ubuntu.com/security/docker-images#get-in-touch) (or using rocks@canonical.com).
2406+
2407+
2408+If your usage includes redistribution, please [contact Canonical](https://ubuntu.com/security/docker-images#get-in-touch).
2409+
2410+## Docker CLI
2411+
2412+Launch this image locally:
2413+
2414+```sh
2415+docker run -d --name cassandra-container -e TZ=UTC -p 7000:7000 -p 7001:7001 -p 7199:7199 -p 9042:9042 -p 9160:9160 public.ecr.aws/lts/cassandra:latest
2416+```
2417+Access your Cassandra server with `cqlsh localhost 9042`.
2418+
2419+#### Parameters
2420+
2421+| Parameter | Description |
2422+|---|---|
2423+| `-e TZ=UTC` | Timezone. |
2424+| `-p 7000:7000` | Expose itra-node communication |
2425+| `-p 7001:7001` | Expose TLS itra-node communication |
2426+| `-p 7199:7199` | Expose JMX |
2427+| `-p 9042:9042` | Expose CQL |
2428+| `-p 9160:9160` | Expose thrift service |
2429+| `-v /local/path/to/data:/var/lib/cassandra` | Volume to store Cassandra data |
2430+| `-v /path/to/logs:/var/log/cassandra` | Volume to store cassandra logs |
2431+
2432+
2433+#### Testing/Debugging
2434+
2435+To debug the container:
2436+
2437+```sh
2438+docker logs -f cassandra-container
2439+```
2440+
2441+To get an interactive shell:
2442+
2443+```sh
2444+docker exec -it cassandra-container /bin/bash
2445+```
2446+
2447+
2448+## Deploy with Kubernetes
2449+
2450+Works with any Kubernetes; if you don't have one, we recommend you [install MicroK8s](https://microk8s.io/) and `microk8s.enable dns storage` then `snap alias microk8s.kubectl kubectl`.
2451+
2452+Download
2453+[cassandra-deployment.yml](https://git.launchpad.net/~canonical-server/ubuntu-docker-images/+git/cassandra/plain/examples/cassandra-deployment.yml) and set `containers.cassandra.image` in `cassandra-deployment.yml` to your chosen channel tag (e.g. `public.ecr.aws/lts/cassandra:latest`), then:
2454+
2455+```sh
2456+kubectl apply -f cassandra-deployment.yml
2457+```
2458+
2459+You can now access the cassandra server on port 9042 (e.g., cqlsh localhost 9042)
2460+
2461+## Bugs and feature requests
2462+
2463+If you find a bug in our image or want to request a specific feature, please file a bug here:
2464+
2465+[https://bugs.launchpad.net/ubuntu-docker-images/+filebug](https://bugs.launchpad.net/ubuntu-docker-images/+filebug)
2466+
2467+Please title the bug "`cassandra: <issue summary>`". Make sure to include the digest of the image you are using, from:
2468+
2469+```sh
2470+docker images --no-trunc --quiet public.ecr.aws/lts/cassandra:<tag>
2471+```
2472+
2473diff --git a/out-lts/cortex.md b/docs/public.ecr.aws/lts/cortex.md
2474similarity index 80%
2475rename from out-lts/cortex.md
2476rename to docs/public.ecr.aws/lts/cortex.md
2477index ae779d0..b321fda 100644
2478--- a/out-lts/cortex.md
2479+++ b/docs/public.ecr.aws/lts/cortex.md
2480@@ -1,8 +1,8 @@
2481 # Cortex LTS Docker Image
2482+ **This repository has no LTS channel yet, please [get in touch](https://ubuntu.com/security/docker-images#get-in-touch) if you need one.**
2483
2484 ## LTS Docker Image Portfolio
2485-The [LTS Docker Image Portfolio](https://ubuntu.com/security/docker-images) are consistent, compliant, minimal and secure images with Extended Security Maintenance (ESM) commitments from Canonical. This repository is exempted from per-user rate limits.
2486-
2487+The [LTS Docker Image Portfolio](https://ubuntu.com/security/docker-images) are consistent, compliant, minimal and secure images with Extended Security Maintenance (ESM) commitments from Canonical.
2488
2489 ## About Cortex
2490
2491@@ -18,27 +18,31 @@ Read more on the [Cortex website](https://cortexmetrics.io/).
2492
2493 ## Tags and Architectures
2494 ![LTS](https://assets.ubuntu.com/v1/0a5ff561-LTS%402x.png?h=17)
2495-Up to 5 years free security maintenance `from lts/cortex`.
2496+Up to 5 years free security maintenance from this repository.
2497
2498 ![ESM](https://assets.ubuntu.com/v1/572f3fbd-ESM%402x.png?h=17)
2499-Up to 10 years customer security maintenance `from store/canonical/cortex`.
2500+Up to 10 years customer security maintenance `from canonical/cortex`. [Request access](https://ubuntu.com/security/docker-images#get-in-touch).
2501
2502-_Tags in italics are not available in lts/cortex but are shown here for completeness._
2503+<!-- _Tags in italics are not available in public.ecr.aws/lts/cortex but are shown here for completeness._ -->
2504
2505 | Channel Tag | ![LTS](https://assets.ubuntu.com/v1/0a5ff561-LTS%402x.png?h=17) until | ![ESM](https://assets.ubuntu.com/v1/572f3fbd-ESM%402x.png?h=17) until | Currently | Architectures |
2506 |---|---|---|---|---|
2507 | _`track_risk`_ |
2508
2509-Channel tag shows the most stable channel for that track ordered `stable`, `candidate`, `beta`, `edge`. More risky channels are always implicitly available. So if `beta` is listed, you can also pull `edge`. If `candidate` is listed, you can pull beta and edge. When `stable` is listed, all four are available. Images are guaranteed to progress through the sequence `edge`, `beta`, `candidate` before `stable`.
2510+Channel Tag shows the most stable channel for that track ordered `stable`, `candidate`, `beta`, `edge`. More risky channels are always implicitly available. So if `beta` is listed, you can also pull `edge`. If `candidate` is listed, you can pull `beta` and `edge`. When `stable` is listed, all four are available. Images are guaranteed to progress through the sequence `edge`, `beta`, `candidate` before `stable`.
2511+
2512+### Commercial use and Extended Security Maintenance channels
2513+If your usage includes redistribution or requires unavailable channels/versions, please [get in touch with the Canonical team](https://ubuntu.com/security/docker-images#get-in-touch) (or using rocks@canonical.com).
2514
2515-## Usage
2516
2517 If your usage includes redistribution, please [contact Canonical](https://ubuntu.com/security/docker-images#get-in-touch).
2518
2519+## Docker CLI
2520+
2521 Launch this image locally:
2522
2523 ```sh
2524-docker run -d --name cortex-container -e TZ=UTC -p 32709:9009 lts/cortex:1.4-20.04_beta
2525+docker run -d --name cortex-container -e TZ=UTC -p 32709:9009 public.ecr.aws/lts/cortex:latest
2526 ```
2527 Access your Cortex server at `http://localhost:32709`.
2528
2529@@ -72,7 +76,7 @@ Works with any Kubernetes; if you don't have one, we recommend you [install Micr
2530
2531 Download
2532 [cortex.yaml](https://git.launchpad.net/~canonical-server/ubuntu-docker-images/+git/cortex/plain/oci/examples/config/cortex.yaml) and
2533-[cortex-deployment.yml](https://git.launchpad.net/~canonical-server/ubuntu-docker-images/+git/cortex/plain/oci/examples/cortex-deployment.yml) and set `containers.cortex.image` in `cortex-deployment.yml` to your chosen channel tag (e.g. `lts/cortex:1.4-20.04_beta`), then:
2534+[cortex-deployment.yml](https://git.launchpad.net/~canonical-server/ubuntu-docker-images/+git/cortex/plain/oci/examples/cortex-deployment.yml) and set `containers.cortex.image` in `cortex-deployment.yml` to your chosen channel tag (e.g. `public.ecr.aws/lts/cortex:latest`), then:
2535
2536 ```sh
2537 kubectl create configmap cortex-config --from-file=main-config=cortex.yaml
2538@@ -90,6 +94,6 @@ If you find a bug in our image or want to request a specific feature, please fil
2539 Please title the bug "`cortex: <issue summary>`". Make sure to include the digest of the image you are using, from:
2540
2541 ```sh
2542-docker images --no-trunc --quiet lts/cortex:<tag>
2543+docker images --no-trunc --quiet public.ecr.aws/lts/cortex:<tag>
2544 ```
2545
2546diff --git a/out-lts/grafana.md b/docs/public.ecr.aws/lts/grafana.md
2547similarity index 77%
2548rename from out-lts/grafana.md
2549rename to docs/public.ecr.aws/lts/grafana.md
2550index af4cee1..3e003fa 100644
2551--- a/out-lts/grafana.md
2552+++ b/docs/public.ecr.aws/lts/grafana.md
2553@@ -1,37 +1,41 @@
2554-# Grafana LTS Docker Image
2555+# Grafana™ software LTS Docker Image
2556+ **This repository has no LTS channel yet, please [get in touch](https://ubuntu.com/security/docker-images#get-in-touch) if you need one.**
2557
2558 ## LTS Docker Image Portfolio
2559-The [LTS Docker Image Portfolio](https://ubuntu.com/security/docker-images) are consistent, compliant, minimal and secure images with Extended Security Maintenance (ESM) commitments from Canonical. This repository is exempted from per-user rate limits.
2560+The [LTS Docker Image Portfolio](https://ubuntu.com/security/docker-images) are consistent, compliant, minimal and secure images with Extended Security Maintenance (ESM) commitments from Canonical.
2561
2562-
2563-## About Grafana
2564+## About Grafana™ software
2565
2566 Grafana is a feature rich metrics dashboard and graph editor for Cloudwatch, Elasticsearch, Graphite, InfluxDB, OpenTSB, Prometheus, and Hosted Metrics. Read more on the [Grafana website](https://grafana.com/docs/).
2567
2568
2569 ## Tags and Architectures
2570 ![LTS](https://assets.ubuntu.com/v1/0a5ff561-LTS%402x.png?h=17)
2571-Up to 5 years free security maintenance `from lts/grafana`.
2572+Up to 5 years free security maintenance from this repository.
2573
2574 ![ESM](https://assets.ubuntu.com/v1/572f3fbd-ESM%402x.png?h=17)
2575-Up to 10 years customer security maintenance `from store/canonical/grafana`.
2576+Up to 10 years customer security maintenance `from canonical/grafana`. [Request access](https://ubuntu.com/security/docker-images#get-in-touch).
2577
2578-_Tags in italics are not available in lts/grafana but are shown here for completeness._
2579+<!-- _Tags in italics are not available in public.ecr.aws/lts/grafana but are shown here for completeness._ -->
2580
2581 | Channel Tag | ![LTS](https://assets.ubuntu.com/v1/0a5ff561-LTS%402x.png?h=17) until | ![ESM](https://assets.ubuntu.com/v1/572f3fbd-ESM%402x.png?h=17) until | Currently | Architectures |
2582 |---|---|---|---|---|
2583 | _`track_risk`_ |
2584
2585-Channel tag shows the most stable channel for that track ordered `stable`, `candidate`, `beta`, `edge`. More risky channels are always implicitly available. So if `beta` is listed, you can also pull `edge`. If `candidate` is listed, you can pull beta and edge. When `stable` is listed, all four are available. Images are guaranteed to progress through the sequence `edge`, `beta`, `candidate` before `stable`.
2586+Channel Tag shows the most stable channel for that track ordered `stable`, `candidate`, `beta`, `edge`. More risky channels are always implicitly available. So if `beta` is listed, you can also pull `edge`. If `candidate` is listed, you can pull `beta` and `edge`. When `stable` is listed, all four are available. Images are guaranteed to progress through the sequence `edge`, `beta`, `candidate` before `stable`.
2587+
2588+### Commercial use and Extended Security Maintenance channels
2589+If your usage includes redistribution or requires unavailable channels/versions, please [get in touch with the Canonical team](https://ubuntu.com/security/docker-images#get-in-touch) (or using rocks@canonical.com).
2590
2591-## Usage
2592
2593 If your usage includes redistribution, please [contact Canonical](https://ubuntu.com/security/docker-images#get-in-touch).
2594
2595+## Docker CLI
2596+
2597 Launch this image locally:
2598
2599 ```sh
2600-docker run -d --name grafana-container -e TZ=UTC -p 30000:3000 lts/grafana:7.2-20.04_beta
2601+docker run -d --name grafana-container -e TZ=UTC -p 30000:3000 public.ecr.aws/lts/grafana:latest
2602 ```
2603 Access your Grafana server at `localhost:30000`.
2604
2605@@ -66,7 +70,7 @@ Works with any Kubernetes; if you don't have one, we recommend you [install Micr
2606
2607 Download
2608 [datasource.yml](https://git.launchpad.net/~canonical-server/ubuntu-docker-images/+git/grafana/plain/examples/config/datasource.yml), [dashboard.yml](https://git.launchpad.net/~canonical-server/ubuntu-docker-images/+git/grafana/plain/examples/config/dashboard.yml), [system-stats-dashboard.json](https://git.launchpad.net/~canonical-server/ubuntu-docker-images/+git/grafana/plain/examples/config/system-stats-dashboard.json) and
2609-[grafana-deployment.yml](https://git.launchpad.net/~canonical-server/ubuntu-docker-images/+git/grafana/plain/examples/grafana-deployment.yml) and set `containers.grafana.image` in `grafana-deployment.yml` to your chosen channel tag (e.g. `lts/grafana:7.2-20.04_beta`), then:
2610+[grafana-deployment.yml](https://git.launchpad.net/~canonical-server/ubuntu-docker-images/+git/grafana/plain/examples/grafana-deployment.yml) and set `containers.grafana.image` in `grafana-deployment.yml` to your chosen channel tag (e.g. `public.ecr.aws/lts/grafana:latest`), then:
2611
2612 ```sh
2613 kubectl create configmap grafana-config --from-file=grafana-datasource=datasource.yml --from-file=grafana-dashboard-definition=dashboard.yml --from-file=grafana-dashboard=system-stats-dashboard.json
2614@@ -84,6 +88,6 @@ If you find a bug in our image or want to request a specific feature, please fil
2615 Please title the bug "`grafana: <issue summary>`". Make sure to include the digest of the image you are using, from:
2616
2617 ```sh
2618-docker images --no-trunc --quiet lts/grafana:<tag>
2619+docker images --no-trunc --quiet public.ecr.aws/lts/grafana:<tag>
2620 ```
2621
2622diff --git a/out-lts/memcached.md b/docs/public.ecr.aws/lts/memcached.md
2623similarity index 84%
2624rename from out-lts/memcached.md
2625rename to docs/public.ecr.aws/lts/memcached.md
2626index c33827e..2403521 100644
2627--- a/out-lts/memcached.md
2628+++ b/docs/public.ecr.aws/lts/memcached.md
2629@@ -1,8 +1,8 @@
2630 # Memcached LTS Docker Image
2631+
2632
2633 ## LTS Docker Image Portfolio
2634-The [LTS Docker Image Portfolio](https://ubuntu.com/security/docker-images) are consistent, compliant, minimal and secure images with Extended Security Maintenance (ESM) commitments from Canonical. This repository is exempted from per-user rate limits.
2635-
2636+The [LTS Docker Image Portfolio](https://ubuntu.com/security/docker-images) are consistent, compliant, minimal and secure images with Extended Security Maintenance (ESM) commitments from Canonical.
2637
2638 ## About Memcached
2639
2640@@ -11,28 +11,32 @@ Memcached is an in-memory key-value store for small chunks of arbitrary data (st
2641
2642 ## Tags and Architectures
2643 ![LTS](https://assets.ubuntu.com/v1/0a5ff561-LTS%402x.png?h=17)
2644-Up to 5 years free security maintenance `from lts/memcached`.
2645+Up to 5 years free security maintenance from this repository.
2646
2647 ![ESM](https://assets.ubuntu.com/v1/572f3fbd-ESM%402x.png?h=17)
2648-Up to 10 years customer security maintenance `from store/canonical/memcached`.
2649+Up to 10 years customer security maintenance `from canonical/memcached`. [Request access](https://ubuntu.com/security/docker-images#get-in-touch).
2650
2651-_Tags in italics are not available in lts/memcached but are shown here for completeness._
2652+<!-- _Tags in italics are not available in public.ecr.aws/lts/memcached but are shown here for completeness._ -->
2653
2654 | Channel Tag | ![LTS](https://assets.ubuntu.com/v1/0a5ff561-LTS%402x.png?h=17) until | ![ESM](https://assets.ubuntu.com/v1/572f3fbd-ESM%402x.png?h=17) until | Currently | Architectures |
2655 |---|---|---|---|---|
2656-| **`1.5-20.04_beta`** &nbsp;&nbsp; | - | - | Memcached 1.5.22 | `amd64`, `arm64`, `ppc64el`, `s390x` |
2657+ | **`1.5-20.04_beta`** &nbsp;&nbsp; | - | - | Memcached 1.5.22 on Ubuntu&nbsp;20.04&nbsp;LTS| `amd64`, `arm64`, `ppc64el`, `s390x` |
2658 | _`track_risk`_ |
2659
2660-Channel tag shows the most stable channel for that track ordered `stable`, `candidate`, `beta`, `edge`. More risky channels are always implicitly available. So if `beta` is listed, you can also pull `edge`. If `candidate` is listed, you can pull beta and edge. When `stable` is listed, all four are available. Images are guaranteed to progress through the sequence `edge`, `beta`, `candidate` before `stable`.
2661+Channel Tag shows the most stable channel for that track ordered `stable`, `candidate`, `beta`, `edge`. More risky channels are always implicitly available. So if `beta` is listed, you can also pull `edge`. If `candidate` is listed, you can pull `beta` and `edge`. When `stable` is listed, all four are available. Images are guaranteed to progress through the sequence `edge`, `beta`, `candidate` before `stable`.
2662+
2663+### Commercial use and Extended Security Maintenance channels
2664+If your usage includes redistribution or requires unavailable channels/versions, please [get in touch with the Canonical team](https://ubuntu.com/security/docker-images#get-in-touch) (or using rocks@canonical.com).
2665
2666-## Usage
2667
2668 If your usage includes redistribution, please [contact Canonical](https://ubuntu.com/security/docker-images#get-in-touch).
2669
2670+## Docker CLI
2671+
2672 Launch this image locally:
2673
2674 ```sh
2675-docker run -d --name memcached-container -e TZ=UTC lts/memcached:1.5-20.04_beta
2676+docker run -d --name memcached-container -e TZ=UTC public.ecr.aws/lts/memcached:1.5-20.04_beta
2677 ```
2678
2679 #### Parameters
2680@@ -97,7 +101,7 @@ In this case you can append the flags themselves or a shell script to the run co
2681 Works with any Kubernetes; if you don't have one, we recommend you [install MicroK8s](https://microk8s.io/) and `microk8s.enable dns storage` then `snap alias microk8s.kubectl kubectl`.
2682
2683 Download
2684-[memcached-deployment.yml](https://git.launchpad.net/~canonical-server/ubuntu-docker-images/+git/memcached/plain/examples/memcached-deployment.yml) and set `containers.memcached.image` in `memcached-deployment.yml` to your chosen channel tag (e.g. `lts/memcached:1.5-20.04_beta`), then:
2685+[memcached-deployment.yml](https://git.launchpad.net/~canonical-server/ubuntu-docker-images/+git/memcached/plain/examples/memcached-deployment.yml) and set `containers.memcached.image` in `memcached-deployment.yml` to your chosen channel tag (e.g. `public.ecr.aws/lts/memcached:1.5-20.04_beta`), then:
2686
2687 ```sh
2688 kubectl apply -f memcached-deployment.yml
2689@@ -114,6 +118,6 @@ If you find a bug in our image or want to request a specific feature, please fil
2690 Please title the bug "`memcached: <issue summary>`". Make sure to include the digest of the image you are using, from:
2691
2692 ```sh
2693-docker images --no-trunc --quiet lts/memcached:<tag>
2694+docker images --no-trunc --quiet public.ecr.aws/lts/memcached:<tag>
2695 ```
2696
2697diff --git a/out-lts/mysql.md b/docs/public.ecr.aws/lts/mysql.md
2698similarity index 81%
2699rename from out-lts/mysql.md
2700rename to docs/public.ecr.aws/lts/mysql.md
2701index 6239da7..d3cf571 100644
2702--- a/out-lts/mysql.md
2703+++ b/docs/public.ecr.aws/lts/mysql.md
2704@@ -1,38 +1,42 @@
2705-# MySQL LTS Docker Image
2706+# MySQL™ LTS Docker Image
2707+
2708
2709 ## LTS Docker Image Portfolio
2710-The [LTS Docker Image Portfolio](https://ubuntu.com/security/docker-images) are consistent, compliant, minimal and secure images with Extended Security Maintenance (ESM) commitments from Canonical. This repository is exempted from per-user rate limits.
2711+The [LTS Docker Image Portfolio](https://ubuntu.com/security/docker-images) are consistent, compliant, minimal and secure images with Extended Security Maintenance (ESM) commitments from Canonical.
2712
2713-
2714-## About MySQL
2715+## About MySQL™
2716
2717 MySQL is a fast, stable and true multi-user, multi-threaded SQL database server. SQL (Structured Query Language) is the most popular database query language in the world. The main goals of MySQL are speed, robustness and ease of use. Read more on the [MySQL website](https://dev.mysql.com/doc/refman/8.0/en/).
2718
2719
2720 ## Tags and Architectures
2721 ![LTS](https://assets.ubuntu.com/v1/0a5ff561-LTS%402x.png?h=17)
2722-Up to 5 years free security maintenance `from lts/mysql`.
2723+Up to 5 years free security maintenance from this repository.
2724
2725 ![ESM](https://assets.ubuntu.com/v1/572f3fbd-ESM%402x.png?h=17)
2726-Up to 10 years customer security maintenance `from store/canonical/mysql`.
2727+Up to 10 years customer security maintenance `from canonical/mysql`. [Request access](https://ubuntu.com/security/docker-images#get-in-touch).
2728
2729-_Tags in italics are not available in lts/mysql but are shown here for completeness._
2730+<!-- _Tags in italics are not available in public.ecr.aws/lts/mysql but are shown here for completeness._ -->
2731
2732 | Channel Tag | ![LTS](https://assets.ubuntu.com/v1/0a5ff561-LTS%402x.png?h=17) until | ![ESM](https://assets.ubuntu.com/v1/572f3fbd-ESM%402x.png?h=17) until | Currently | Architectures |
2733 |---|---|---|---|---|
2734-| **`8.0-20.04_beta`** &nbsp;&nbsp; | - | - | MySQL 8.0.22 | `amd64`, `arm64`, `s390x` |
2735+ | **`8.0-20.04_beta`** &nbsp;&nbsp; | - | - | MySQL™ 8.0.22 on Ubuntu&nbsp;20.04&nbsp;LTS| `amd64`, `arm64`, `s390x` |
2736 | _`track_risk`_ |
2737
2738-Channel tag shows the most stable channel for that track ordered `stable`, `candidate`, `beta`, `edge`. More risky channels are always implicitly available. So if `beta` is listed, you can also pull `edge`. If `candidate` is listed, you can pull beta and edge. When `stable` is listed, all four are available. Images are guaranteed to progress through the sequence `edge`, `beta`, `candidate` before `stable`.
2739+Channel Tag shows the most stable channel for that track ordered `stable`, `candidate`, `beta`, `edge`. More risky channels are always implicitly available. So if `beta` is listed, you can also pull `edge`. If `candidate` is listed, you can pull `beta` and `edge`. When `stable` is listed, all four are available. Images are guaranteed to progress through the sequence `edge`, `beta`, `candidate` before `stable`.
2740+
2741+### Commercial use and Extended Security Maintenance channels
2742+If your usage includes redistribution or requires unavailable channels/versions, please [get in touch with the Canonical team](https://ubuntu.com/security/docker-images#get-in-touch) (or using rocks@canonical.com).
2743
2744-## Usage
2745
2746 If your usage includes redistribution, please [contact Canonical](https://ubuntu.com/security/docker-images#get-in-touch).
2747
2748+## Docker CLI
2749+
2750 Launch this image locally:
2751
2752 ```sh
2753-docker run -d --name mysql-container -e TZ=UTC -p 30306:3306 -e MYSQL_ROOT_PASSWORD=My:S3cr3t/ lts/mysql:8.0-20.04_beta
2754+docker run -d --name mysql-container -e TZ=UTC -p 30306:3306 -e MYSQL_ROOT_PASSWORD=My:S3cr3t/ public.ecr.aws/lts/mysql:8.0-20.04_beta
2755 ```
2756 Access your MySQL server at `localhost:30306`.
2757
2758@@ -83,7 +87,7 @@ This image also includes the `mysql` client for interactive container use:
2759 ```sh
2760 $ docker network create mysql-network
2761 $ docker network connect mysql-network mysql-container
2762-$ docker run -it --rm --network mysql-network lts/mysql:8.0-20.04_beta mysql -hmysql-container -uroot -p
2763+$ docker run -it --rm --network mysql-network public.ecr.aws/lts/mysql:8.0-20.04_beta mysql -hmysql-container -uroot -p
2764 ```
2765 The password will be asked and you can enter `My:S3cr3t/`. Now, you are logged in and can enjoy your new instance.
2766
2767@@ -93,7 +97,7 @@ Works with any Kubernetes; if you don't have one, we recommend you [install Micr
2768
2769 Download
2770 [my-custom.cnf](https://git.launchpad.net/~canonical-server/ubuntu-docker-images/+git/mysql/plain/examples/config/my-custom.cnf) and
2771-[mysql-deployment.yml](https://git.launchpad.net/~canonical-server/ubuntu-docker-images/+git/mysql/plain/examples/mysql-deployment.yml) and set `containers.mysql.image` in `mysql-deployment.yml` to your chosen channel tag (e.g. `lts/mysql:8.0-20.04_beta`), then:
2772+[mysql-deployment.yml](https://git.launchpad.net/~canonical-server/ubuntu-docker-images/+git/mysql/plain/examples/mysql-deployment.yml) and set `containers.mysql.image` in `mysql-deployment.yml` to your chosen channel tag (e.g. `public.ecr.aws/lts/mysql:8.0-20.04_beta`), then:
2773
2774 ```sh
2775 kubectl create configmap mysql-config --from-file=main-config=my-custom.cnf
2776@@ -111,6 +115,6 @@ If you find a bug in our image or want to request a specific feature, please fil
2777 Please title the bug "`mysql: <issue summary>`". Make sure to include the digest of the image you are using, from:
2778
2779 ```sh
2780-docker images --no-trunc --quiet lts/mysql:<tag>
2781+docker images --no-trunc --quiet public.ecr.aws/lts/mysql:<tag>
2782 ```
2783
2784diff --git a/out-lts/nginx.md b/docs/public.ecr.aws/lts/nginx.md
2785similarity index 78%
2786rename from out-lts/nginx.md
2787rename to docs/public.ecr.aws/lts/nginx.md
2788index d837f3c..2ba7470 100644
2789--- a/out-lts/nginx.md
2790+++ b/docs/public.ecr.aws/lts/nginx.md
2791@@ -1,8 +1,8 @@
2792 # Nginx LTS Docker Image
2793+
2794
2795 ## LTS Docker Image Portfolio
2796-The [LTS Docker Image Portfolio](https://ubuntu.com/security/docker-images) are consistent, compliant, minimal and secure images with Extended Security Maintenance (ESM) commitments from Canonical. This repository is exempted from per-user rate limits.
2797-
2798+The [LTS Docker Image Portfolio](https://ubuntu.com/security/docker-images) are consistent, compliant, minimal and secure images with Extended Security Maintenance (ESM) commitments from Canonical.
2799
2800 ## About Nginx
2801
2802@@ -11,28 +11,32 @@ Nginx ("engine X") is a high-performance web and reverse proxy server created by
2803
2804 ## Tags and Architectures
2805 ![LTS](https://assets.ubuntu.com/v1/0a5ff561-LTS%402x.png?h=17)
2806-Up to 5 years free security maintenance `from lts/nginx`.
2807+Up to 5 years free security maintenance from this repository.
2808
2809 ![ESM](https://assets.ubuntu.com/v1/572f3fbd-ESM%402x.png?h=17)
2810-Up to 10 years customer security maintenance `from store/canonical/nginx`.
2811+Up to 10 years customer security maintenance `from canonical/nginx`. [Request access](https://ubuntu.com/security/docker-images#get-in-touch).
2812
2813-_Tags in italics are not available in lts/nginx but are shown here for completeness._
2814+<!-- _Tags in italics are not available in public.ecr.aws/lts/nginx but are shown here for completeness._ -->
2815
2816 | Channel Tag | ![LTS](https://assets.ubuntu.com/v1/0a5ff561-LTS%402x.png?h=17) until | ![ESM](https://assets.ubuntu.com/v1/572f3fbd-ESM%402x.png?h=17) until | Currently | Architectures |
2817 |---|---|---|---|---|
2818-| **`1.18-20.04_beta`** &nbsp;&nbsp; | - | - | Nginx 1.18.0 | `amd64`, `arm64`, `ppc64el`, `s390x` |
2819+ | **`1.18-20.04_beta`** &nbsp;&nbsp; | - | - | Nginx 1.18.0 on Ubuntu&nbsp;20.04&nbsp;LTS| `amd64`, `arm64`, `ppc64el`, `s390x` |
2820 | _`track_risk`_ |
2821
2822-Channel tag shows the most stable channel for that track ordered `stable`, `candidate`, `beta`, `edge`. More risky channels are always implicitly available. So if `beta` is listed, you can also pull `edge`. If `candidate` is listed, you can pull beta and edge. When `stable` is listed, all four are available. Images are guaranteed to progress through the sequence `edge`, `beta`, `candidate` before `stable`.
2823+Channel Tag shows the most stable channel for that track ordered `stable`, `candidate`, `beta`, `edge`. More risky channels are always implicitly available. So if `beta` is listed, you can also pull `edge`. If `candidate` is listed, you can pull `beta` and `edge`. When `stable` is listed, all four are available. Images are guaranteed to progress through the sequence `edge`, `beta`, `candidate` before `stable`.
2824+
2825+### Commercial use and Extended Security Maintenance channels
2826+If your usage includes redistribution or requires unavailable channels/versions, please [get in touch with the Canonical team](https://ubuntu.com/security/docker-images#get-in-touch) (or using rocks@canonical.com).
2827
2828-## Usage
2829
2830 If your usage includes redistribution, please [contact Canonical](https://ubuntu.com/security/docker-images#get-in-touch).
2831
2832+## Docker CLI
2833+
2834 Launch this image locally:
2835
2836 ```sh
2837-docker run -d --name nginx-container -e TZ=UTC -p 8080:80 lts/nginx:1.18-20.04_beta
2838+docker run -d --name nginx-container -e TZ=UTC -p 8080:80 public.ecr.aws/lts/nginx:1.18-20.04_beta
2839 ```
2840 Access your Nginx server at `http://localhost:8080`.
2841
2842@@ -68,7 +72,7 @@ Works with any Kubernetes; if you don't have one, we recommend you [install Micr
2843
2844 Download
2845 [nginx.conf](https://git.launchpad.net/~canonical-server/ubuntu-docker-images/+git/nginx/plain/examples/config/nginx.conf), [index.html](https://git.launchpad.net/~canonical-server/ubuntu-docker-images/+git/nginx/plain/examples/config/html/index.html) and
2846-[nginx-deployment.yml](https://git.launchpad.net/~canonical-server/ubuntu-docker-images/+git/nginx/plain/examples/nginx-deployment.yml) and set `containers.nginx.image` in `nginx-deployment.yml` to your chosen channel tag (e.g. `lts/nginx:1.18-20.04_beta`), then:
2847+[nginx-deployment.yml](https://git.launchpad.net/~canonical-server/ubuntu-docker-images/+git/nginx/plain/examples/nginx-deployment.yml) and set `containers.nginx.image` in `nginx-deployment.yml` to your chosen channel tag (e.g. `public.ecr.aws/lts/nginx:1.18-20.04_beta`), then:
2848
2849 ```sh
2850 kubectl create configmap nginx-config --from-file=nginx=nginx.conf --from-file=nginx-site=index.html
2851@@ -86,6 +90,6 @@ If you find a bug in our image or want to request a specific feature, please fil
2852 Please title the bug "`nginx: <issue summary>`". Make sure to include the digest of the image you are using, from:
2853
2854 ```sh
2855-docker images --no-trunc --quiet lts/nginx:<tag>
2856+docker images --no-trunc --quiet public.ecr.aws/lts/nginx:<tag>
2857 ```
2858
2859diff --git a/out-lts/postgres.md b/docs/public.ecr.aws/lts/postgres.md
2860similarity index 84%
2861rename from out-lts/postgres.md
2862rename to docs/public.ecr.aws/lts/postgres.md
2863index 49c284b..d39a9db 100644
2864--- a/out-lts/postgres.md
2865+++ b/docs/public.ecr.aws/lts/postgres.md
2866@@ -1,8 +1,8 @@
2867 # Postgres LTS Docker Image
2868+
2869
2870 ## LTS Docker Image Portfolio
2871-The [LTS Docker Image Portfolio](https://ubuntu.com/security/docker-images) are consistent, compliant, minimal and secure images with Extended Security Maintenance (ESM) commitments from Canonical. This repository is exempted from per-user rate limits.
2872-
2873+The [LTS Docker Image Portfolio](https://ubuntu.com/security/docker-images) are consistent, compliant, minimal and secure images with Extended Security Maintenance (ESM) commitments from Canonical.
2874
2875 ## About Postgres
2876
2877@@ -11,28 +11,32 @@ PostgreSQL is a powerful, open source object-relational database system. It is f
2878
2879 ## Tags and Architectures
2880 ![LTS](https://assets.ubuntu.com/v1/0a5ff561-LTS%402x.png?h=17)
2881-Up to 5 years free security maintenance `from lts/postgres`.
2882+Up to 5 years free security maintenance from this repository.
2883
2884 ![ESM](https://assets.ubuntu.com/v1/572f3fbd-ESM%402x.png?h=17)
2885-Up to 10 years customer security maintenance `from store/canonical/postgres`.
2886+Up to 10 years customer security maintenance `from canonical/postgres`. [Request access](https://ubuntu.com/security/docker-images#get-in-touch).
2887
2888-_Tags in italics are not available in lts/postgres but are shown here for completeness._
2889+<!-- _Tags in italics are not available in public.ecr.aws/lts/postgres but are shown here for completeness._ -->
2890
2891 | Channel Tag | ![LTS](https://assets.ubuntu.com/v1/0a5ff561-LTS%402x.png?h=17) until | ![ESM](https://assets.ubuntu.com/v1/572f3fbd-ESM%402x.png?h=17) until | Currently | Architectures |
2892 |---|---|---|---|---|
2893-| **`12.4-20.04_beta`** &nbsp;&nbsp; | - | - | Postgres 12.4 | `amd64`, `arm64`, `s390x` |
2894+ | **`12.4-20.04_beta`** &nbsp;&nbsp; | - | - | Postgres 12.4 on Ubuntu&nbsp;20.04&nbsp;LTS| `amd64`, `arm64`, `s390x` |
2895 | _`track_risk`_ |
2896
2897-Channel tag shows the most stable channel for that track ordered `stable`, `candidate`, `beta`, `edge`. More risky channels are always implicitly available. So if `beta` is listed, you can also pull `edge`. If `candidate` is listed, you can pull beta and edge. When `stable` is listed, all four are available. Images are guaranteed to progress through the sequence `edge`, `beta`, `candidate` before `stable`.
2898+Channel Tag shows the most stable channel for that track ordered `stable`, `candidate`, `beta`, `edge`. More risky channels are always implicitly available. So if `beta` is listed, you can also pull `edge`. If `candidate` is listed, you can pull `beta` and `edge`. When `stable` is listed, all four are available. Images are guaranteed to progress through the sequence `edge`, `beta`, `candidate` before `stable`.
2899+
2900+### Commercial use and Extended Security Maintenance channels
2901+If your usage includes redistribution or requires unavailable channels/versions, please [get in touch with the Canonical team](https://ubuntu.com/security/docker-images#get-in-touch) (or using rocks@canonical.com).
2902
2903-## Usage
2904
2905 If your usage includes redistribution, please [contact Canonical](https://ubuntu.com/security/docker-images#get-in-touch).
2906
2907+## Docker CLI
2908+
2909 Launch this image locally:
2910
2911 ```sh
2912-docker run -d --name postgres-container -e TZ=UTC -p 30432:5432 -e POSTGRES_PASSWORD=My:s3Cr3t/ lts/postgres:12.4-20.04_beta
2913+docker run -d --name postgres-container -e TZ=UTC -p 30432:5432 -e POSTGRES_PASSWORD=My:s3Cr3t/ public.ecr.aws/lts/postgres:12.4-20.04_beta
2914 ```
2915 Access your PostgreSQL server at `localhost:30432`.
2916
2917@@ -82,7 +86,7 @@ This image also includes the `psql` client for interactive container use:
2918 ```sh
2919 $ docker network create postgres-network
2920 $ docker network connect postgres-network postgres-container
2921-$ docker run -it --rm --network postgres-network lts/postgres:12.4-20.04_beta psql -h postgres-container -U postgres
2922+$ docker run -it --rm --network postgres-network public.ecr.aws/lts/postgres:12.4-20.04_beta psql -h postgres-container -U postgres
2923 ```
2924 The password will be asked and you can enter `My:s3Cr3t/`. Now, you are logged in and can enjoy your new instance.
2925
2926@@ -92,7 +96,7 @@ Works with any Kubernetes; if you don't have one, we recommend you [install Micr
2927
2928 Download
2929 [postgresql.conf](https://git.launchpad.net/~canonical-server/ubuntu-docker-images/+git/postgresql/plain/examples/config/postgresql.conf) and
2930-[postgres-deployment.yml](https://git.launchpad.net/~canonical-server/ubuntu-docker-images/+git/postgresql/plain/examples/postgres-deployment.yml) and set `containers.postgres.image` in `postgres-deployment.yml` to your chosen channel tag (e.g. `lts/postgres:12.4-20.04_beta`), then:
2931+[postgres-deployment.yml](https://git.launchpad.net/~canonical-server/ubuntu-docker-images/+git/postgresql/plain/examples/postgres-deployment.yml) and set `containers.postgres.image` in `postgres-deployment.yml` to your chosen channel tag (e.g. `public.ecr.aws/lts/postgres:12.4-20.04_beta`), then:
2932
2933 ```sh
2934 kubectl create configmap postgres-config --from-file=main-config=postgresql.conf
2935@@ -110,6 +114,6 @@ If you find a bug in our image or want to request a specific feature, please fil
2936 Please title the bug "`postgres: <issue summary>`". Make sure to include the digest of the image you are using, from:
2937
2938 ```sh
2939-docker images --no-trunc --quiet lts/postgres:<tag>
2940+docker images --no-trunc --quiet public.ecr.aws/lts/postgres:<tag>
2941 ```
2942
2943diff --git a/out-lts/prometheus-alertmanager.md b/docs/public.ecr.aws/lts/prometheus-alertmanager.md
2944similarity index 79%
2945rename from out-lts/prometheus-alertmanager.md
2946rename to docs/public.ecr.aws/lts/prometheus-alertmanager.md
2947index 146a4b8..c204b27 100644
2948--- a/out-lts/prometheus-alertmanager.md
2949+++ b/docs/public.ecr.aws/lts/prometheus-alertmanager.md
2950@@ -1,8 +1,8 @@
2951 # Prometheus Alertmanager LTS Docker Image
2952+ **This repository has no LTS channel yet, please [get in touch](https://ubuntu.com/security/docker-images#get-in-touch) if you need one.**
2953
2954 ## LTS Docker Image Portfolio
2955-The [LTS Docker Image Portfolio](https://ubuntu.com/security/docker-images) are consistent, compliant, minimal and secure images with Extended Security Maintenance (ESM) commitments from Canonical. This repository is exempted from per-user rate limits.
2956-
2957+The [LTS Docker Image Portfolio](https://ubuntu.com/security/docker-images) are consistent, compliant, minimal and secure images with Extended Security Maintenance (ESM) commitments from Canonical.
2958
2959 ## About Prometheus Alertmanager
2960
2961@@ -11,27 +11,31 @@ The Alertmanager handles alerts sent by client applications such as the Promethe
2962
2963 ## Tags and Architectures
2964 ![LTS](https://assets.ubuntu.com/v1/0a5ff561-LTS%402x.png?h=17)
2965-Up to 5 years free security maintenance `from lts/prometheus-alertmanager`.
2966+Up to 5 years free security maintenance from this repository.
2967
2968 ![ESM](https://assets.ubuntu.com/v1/572f3fbd-ESM%402x.png?h=17)
2969-Up to 10 years customer security maintenance `from store/canonical/prometheus-alertmanager`.
2970+Up to 10 years customer security maintenance `from canonical/prometheus-alertmanager`. [Request access](https://ubuntu.com/security/docker-images#get-in-touch).
2971
2972-_Tags in italics are not available in lts/prometheus-alertmanager but are shown here for completeness._
2973+<!-- _Tags in italics are not available in public.ecr.aws/lts/prometheus-alertmanager but are shown here for completeness._ -->
2974
2975 | Channel Tag | ![LTS](https://assets.ubuntu.com/v1/0a5ff561-LTS%402x.png?h=17) until | ![ESM](https://assets.ubuntu.com/v1/572f3fbd-ESM%402x.png?h=17) until | Currently | Architectures |
2976 |---|---|---|---|---|
2977 | _`track_risk`_ |
2978
2979-Channel tag shows the most stable channel for that track ordered `stable`, `candidate`, `beta`, `edge`. More risky channels are always implicitly available. So if `beta` is listed, you can also pull `edge`. If `candidate` is listed, you can pull beta and edge. When `stable` is listed, all four are available. Images are guaranteed to progress through the sequence `edge`, `beta`, `candidate` before `stable`.
2980+Channel Tag shows the most stable channel for that track ordered `stable`, `candidate`, `beta`, `edge`. More risky channels are always implicitly available. So if `beta` is listed, you can also pull `edge`. If `candidate` is listed, you can pull `beta` and `edge`. When `stable` is listed, all four are available. Images are guaranteed to progress through the sequence `edge`, `beta`, `candidate` before `stable`.
2981+
2982+### Commercial use and Extended Security Maintenance channels
2983+If your usage includes redistribution or requires unavailable channels/versions, please [get in touch with the Canonical team](https://ubuntu.com/security/docker-images#get-in-touch) (or using rocks@canonical.com).
2984
2985-## Usage
2986
2987 If your usage includes redistribution, please [contact Canonical](https://ubuntu.com/security/docker-images#get-in-touch).
2988
2989+## Docker CLI
2990+
2991 Launch this image locally:
2992
2993 ```sh
2994-docker run -d --name prometheus-alertmanager-container -e TZ=UTC -p 30093:9093 lts/prometheus-alertmanager:0.21-20.04_beta
2995+docker run -d --name prometheus-alertmanager-container -e TZ=UTC -p 30093:9093 public.ecr.aws/lts/prometheus-alertmanager:latest
2996 ```
2997 Access your Prometheus Alertmanager server at `localhost:30093`.
2998
2999@@ -66,7 +70,7 @@ Works with any Kubernetes; if you don't have one, we recommend you [install Micr
3000
3001 Download
3002 [alertmanager.yml](https://git.launchpad.net/~canonical-server/ubuntu-docker-images/+git/prometheus-alertmanager/plain/oci/examples/config/alertmanager.yml) and
3003-[prometheus-alertmanager-deployment.yml](https://git.launchpad.net/~canonical-server/ubuntu-docker-images/+git/prometheus-alertmanager/plain/oci/examples/alertmanager-deployment.yml) and set `containers.prometheus-alertmanager.image` in `prometheus-alertmanager-deployment.yml` to your chosen channel tag (e.g. `lts/prometheus-alertmanager:0.21-20.04_beta`), then:
3004+[prometheus-alertmanager-deployment.yml](https://git.launchpad.net/~canonical-server/ubuntu-docker-images/+git/prometheus-alertmanager/plain/oci/examples/alertmanager-deployment.yml) and set `containers.prometheus-alertmanager.image` in `prometheus-alertmanager-deployment.yml` to your chosen channel tag (e.g. `public.ecr.aws/lts/prometheus-alertmanager:latest`), then:
3005
3006 ```sh
3007 kubectl create configmap prometheus-alertmanager-config --from-file=alertmanager=alertmanager.yml
3008@@ -84,6 +88,6 @@ If you find a bug in our image or want to request a specific feature, please fil
3009 Please title the bug "`prometheus-alertmanager: <issue summary>`". Make sure to include the digest of the image you are using, from:
3010
3011 ```sh
3012-docker images --no-trunc --quiet lts/prometheus-alertmanager:<tag>
3013+docker images --no-trunc --quiet public.ecr.aws/lts/prometheus-alertmanager:<tag>
3014 ```
3015
3016diff --git a/out-lts/prometheus.md b/docs/public.ecr.aws/lts/prometheus.md
3017similarity index 80%
3018rename from out-lts/prometheus.md
3019rename to docs/public.ecr.aws/lts/prometheus.md
3020index 3c4066d..5b8bfc3 100644
3021--- a/out-lts/prometheus.md
3022+++ b/docs/public.ecr.aws/lts/prometheus.md
3023@@ -1,8 +1,8 @@
3024 # Prometheus LTS Docker Image
3025+ **This repository has no LTS channel yet, please [get in touch](https://ubuntu.com/security/docker-images#get-in-touch) if you need one.**
3026
3027 ## LTS Docker Image Portfolio
3028-The [LTS Docker Image Portfolio](https://ubuntu.com/security/docker-images) are consistent, compliant, minimal and secure images with Extended Security Maintenance (ESM) commitments from Canonical. This repository is exempted from per-user rate limits.
3029-
3030+The [LTS Docker Image Portfolio](https://ubuntu.com/security/docker-images) are consistent, compliant, minimal and secure images with Extended Security Maintenance (ESM) commitments from Canonical.
3031
3032 ## About Prometheus
3033
3034@@ -11,27 +11,31 @@ Prometheus is a systems and service monitoring system. It collects metrics from
3035
3036 ## Tags and Architectures
3037 ![LTS](https://assets.ubuntu.com/v1/0a5ff561-LTS%402x.png?h=17)
3038-Up to 5 years free security maintenance `from lts/prometheus`.
3039+Up to 5 years free security maintenance from this repository.
3040
3041 ![ESM](https://assets.ubuntu.com/v1/572f3fbd-ESM%402x.png?h=17)
3042-Up to 10 years customer security maintenance `from store/canonical/prometheus`.
3043+Up to 10 years customer security maintenance `from canonical/prometheus`. [Request access](https://ubuntu.com/security/docker-images#get-in-touch).
3044
3045-_Tags in italics are not available in lts/prometheus but are shown here for completeness._
3046+<!-- _Tags in italics are not available in public.ecr.aws/lts/prometheus but are shown here for completeness._ -->
3047
3048 | Channel Tag | ![LTS](https://assets.ubuntu.com/v1/0a5ff561-LTS%402x.png?h=17) until | ![ESM](https://assets.ubuntu.com/v1/572f3fbd-ESM%402x.png?h=17) until | Currently | Architectures |
3049 |---|---|---|---|---|
3050 | _`track_risk`_ |
3051
3052-Channel tag shows the most stable channel for that track ordered `stable`, `candidate`, `beta`, `edge`. More risky channels are always implicitly available. So if `beta` is listed, you can also pull `edge`. If `candidate` is listed, you can pull beta and edge. When `stable` is listed, all four are available. Images are guaranteed to progress through the sequence `edge`, `beta`, `candidate` before `stable`.
3053+Channel Tag shows the most stable channel for that track ordered `stable`, `candidate`, `beta`, `edge`. More risky channels are always implicitly available. So if `beta` is listed, you can also pull `edge`. If `candidate` is listed, you can pull `beta` and `edge`. When `stable` is listed, all four are available. Images are guaranteed to progress through the sequence `edge`, `beta`, `candidate` before `stable`.
3054+
3055+### Commercial use and Extended Security Maintenance channels
3056+If your usage includes redistribution or requires unavailable channels/versions, please [get in touch with the Canonical team](https://ubuntu.com/security/docker-images#get-in-touch) (or using rocks@canonical.com).
3057
3058-## Usage
3059
3060 If your usage includes redistribution, please [contact Canonical](https://ubuntu.com/security/docker-images#get-in-touch).
3061
3062+## Docker CLI
3063+
3064 Launch this image locally:
3065
3066 ```sh
3067-docker run -d --name prometheus-container -e TZ=UTC -p 30090:9090 lts/prometheus:2.20-20.04_beta
3068+docker run -d --name prometheus-container -e TZ=UTC -p 30090:9090 public.ecr.aws/lts/prometheus:latest
3069 ```
3070 Access your Prometheus server at `localhost:30090`.
3071
3072@@ -66,7 +70,7 @@ Works with any Kubernetes; if you don't have one, we recommend you [install Micr
3073
3074 Download
3075 [prometheus.yml](https://git.launchpad.net/~canonical-server/ubuntu-docker-images/+git/prometheus/plain/oci/examples/config/prometheus.yml), [alerts.yml](https://git.launchpad.net/~canonical-server/ubuntu-docker-images/+git/prometheus/plain/oci/examples/config/alerts.yml) and
3076-[prometheus-deployment.yml](https://git.launchpad.net/~canonical-server/ubuntu-docker-images/+git/prometheus/plain/oci/examples/prometheus-deployment.yml) and set `containers.prometheus.image` in `prometheus-deployment.yml` to your chosen channel tag (e.g. `lts/prometheus:2.20-20.04_beta`), then:
3077+[prometheus-deployment.yml](https://git.launchpad.net/~canonical-server/ubuntu-docker-images/+git/prometheus/plain/oci/examples/prometheus-deployment.yml) and set `containers.prometheus.image` in `prometheus-deployment.yml` to your chosen channel tag (e.g. `public.ecr.aws/lts/prometheus:latest`), then:
3078
3079 ```sh
3080 kubectl create configmap prometheus-config --from-file=prometheus=prometheus.yml --from-file=prometheus-alerts=alerts.yml
3081@@ -84,6 +88,6 @@ If you find a bug in our image or want to request a specific feature, please fil
3082 Please title the bug "`prometheus: <issue summary>`". Make sure to include the digest of the image you are using, from:
3083
3084 ```sh
3085-docker images --no-trunc --quiet lts/prometheus:<tag>
3086+docker images --no-trunc --quiet public.ecr.aws/lts/prometheus:<tag>
3087 ```
3088
3089diff --git a/out-lts/redis.md b/docs/public.ecr.aws/lts/redis.md
3090similarity index 81%
3091rename from out-lts/redis.md
3092rename to docs/public.ecr.aws/lts/redis.md
3093index b4b7fda..4bc2973 100644
3094--- a/out-lts/redis.md
3095+++ b/docs/public.ecr.aws/lts/redis.md
3096@@ -1,37 +1,41 @@
3097-# Redis LTS Docker Image
3098+# Redis™ software LTS Docker Image
3099+ **This repository has no LTS channel yet, please [get in touch](https://ubuntu.com/security/docker-images#get-in-touch) if you need one.**
3100
3101 ## LTS Docker Image Portfolio
3102-The [LTS Docker Image Portfolio](https://ubuntu.com/security/docker-images) are consistent, compliant, minimal and secure images with Extended Security Maintenance (ESM) commitments from Canonical. This repository is exempted from per-user rate limits.
3103+The [LTS Docker Image Portfolio](https://ubuntu.com/security/docker-images) are consistent, compliant, minimal and secure images with Extended Security Maintenance (ESM) commitments from Canonical.
3104
3105-
3106-## About Redis
3107+## About Redis™ software
3108
3109 Redis is an open source (BSD licensed), in-memory data structure store, used as a database, cache and message broker. It supports data structures such as strings, hashes, lists, sets, sorted sets with range queries, bitmaps, hyperloglogs, geospatial indexes with radius queries and streams. Redis has built-in replication, Lua scripting, LRU eviction, transactions and different levels of on-disk persistence, and provides high availability via Redis Sentinel and automatic partitioning with Redis Cluster. Read more on the [Redis website](https://redis.io/topics/introduction).
3110
3111
3112 ## Tags and Architectures
3113 ![LTS](https://assets.ubuntu.com/v1/0a5ff561-LTS%402x.png?h=17)
3114-Up to 5 years free security maintenance `from lts/redis`.
3115+Up to 5 years free security maintenance from this repository.
3116
3117 ![ESM](https://assets.ubuntu.com/v1/572f3fbd-ESM%402x.png?h=17)
3118-Up to 10 years customer security maintenance `from store/canonical/redis`.
3119+Up to 10 years customer security maintenance `from canonical/redis`. [Request access](https://ubuntu.com/security/docker-images#get-in-touch).
3120
3121-_Tags in italics are not available in lts/redis but are shown here for completeness._
3122+<!-- _Tags in italics are not available in public.ecr.aws/lts/redis but are shown here for completeness._ -->
3123
3124 | Channel Tag | ![LTS](https://assets.ubuntu.com/v1/0a5ff561-LTS%402x.png?h=17) until | ![ESM](https://assets.ubuntu.com/v1/572f3fbd-ESM%402x.png?h=17) until | Currently | Architectures |
3125 |---|---|---|---|---|
3126 | _`track_risk`_ |
3127
3128-Channel tag shows the most stable channel for that track ordered `stable`, `candidate`, `beta`, `edge`. More risky channels are always implicitly available. So if `beta` is listed, you can also pull `edge`. If `candidate` is listed, you can pull beta and edge. When `stable` is listed, all four are available. Images are guaranteed to progress through the sequence `edge`, `beta`, `candidate` before `stable`.
3129+Channel Tag shows the most stable channel for that track ordered `stable`, `candidate`, `beta`, `edge`. More risky channels are always implicitly available. So if `beta` is listed, you can also pull `edge`. If `candidate` is listed, you can pull `beta` and `edge`. When `stable` is listed, all four are available. Images are guaranteed to progress through the sequence `edge`, `beta`, `candidate` before `stable`.
3130+
3131+### Commercial use and Extended Security Maintenance channels
3132+If your usage includes redistribution or requires unavailable channels/versions, please [get in touch with the Canonical team](https://ubuntu.com/security/docker-images#get-in-touch) (or using rocks@canonical.com).
3133
3134-## Usage
3135
3136 If your usage includes redistribution, please [contact Canonical](https://ubuntu.com/security/docker-images#get-in-touch).
3137
3138+## Docker CLI
3139+
3140 Launch this image locally:
3141
3142 ```sh
3143-docker run -d --name redis-container -e TZ=UTC -p 30073:6379 -e REDIS_PASSWORD=mypassword lts/redis:5.0-20.04_beta
3144+docker run -d --name redis-container -e TZ=UTC -p 30073:6379 -e REDIS_PASSWORD=mypassword public.ecr.aws/lts/redis:latest
3145 ```
3146 Access your Redis server at `localhost:30073`.
3147
3148@@ -68,7 +72,7 @@ This image also includes the `redis-cli` client for interactive container use:
3149 ```sh
3150 $ docker network create redis-network
3151 $ docker network connect redis-network redis-container
3152-$ docker run -it --rm --network redis-network lts/redis:5.0-20.04_beta redis-cli -h redis-container
3153+$ docker run -it --rm --network redis-network public.ecr.aws/lts/redis:latest redis-cli -h redis-container
3154 ```
3155 Now you can:
3156 ```
3157@@ -86,7 +90,7 @@ Works with any Kubernetes; if you don't have one, we recommend you [install Micr
3158
3159 Download
3160 [redis.conf](https://git.launchpad.net/~canonical-server/ubuntu-docker-images/+git/redis/plain/examples/config/redis.conf) and
3161-[redis-deployment.yml](https://git.launchpad.net/~canonical-server/ubuntu-docker-images/+git/redis/plain/examples/redis-deployment.yml) and set `containers.redis.image` in `redis-deployment.yml` to your chosen channel tag (e.g. `lts/redis:5.0-20.04_beta`), then:
3162+[redis-deployment.yml](https://git.launchpad.net/~canonical-server/ubuntu-docker-images/+git/redis/plain/examples/redis-deployment.yml) and set `containers.redis.image` in `redis-deployment.yml` to your chosen channel tag (e.g. `public.ecr.aws/lts/redis:latest`), then:
3163
3164 ```sh
3165 kubectl create configmap redis-config --from-file=redis=redis.conf
3166@@ -104,6 +108,6 @@ If you find a bug in our image or want to request a specific feature, please fil
3167 Please title the bug "`redis: <issue summary>`". Make sure to include the digest of the image you are using, from:
3168
3169 ```sh
3170-docker images --no-trunc --quiet lts/redis:<tag>
3171+docker images --no-trunc --quiet public.ecr.aws/lts/redis:<tag>
3172 ```
3173
3174diff --git a/docs/public.ecr.aws/lts/squid.md b/docs/public.ecr.aws/lts/squid.md
3175new file mode 100644
3176index 0000000..e4c9308
3177--- /dev/null
3178+++ b/docs/public.ecr.aws/lts/squid.md
3179@@ -0,0 +1,94 @@
3180+# Squid LTS Docker Image
3181+
3182+
3183+## LTS Docker Image Portfolio
3184+The [LTS Docker Image Portfolio](https://ubuntu.com/security/docker-images) are consistent, compliant, minimal and secure images with Extended Security Maintenance (ESM) commitments from Canonical.
3185+
3186+## About Squid
3187+
3188+Squid is a caching proxy for the Web supporting HTTP, HTTPS, FTP, and more. It reduces bandwidth and improves response times by caching and reusing frequently-requested web pages. Squid has extensive access controls and makes a great server accelerator. It runs on most available operating systems, including Windows and is licensed under the GNU GPL.
3189+
3190+
3191+## Tags and Architectures
3192+![LTS](https://assets.ubuntu.com/v1/0a5ff561-LTS%402x.png?h=17)
3193+Up to 5 years free security maintenance from this repository.
3194+
3195+![ESM](https://assets.ubuntu.com/v1/572f3fbd-ESM%402x.png?h=17)
3196+Up to 10 years customer security maintenance `from canonical/squid`. [Request access](https://ubuntu.com/security/docker-images#get-in-touch).
3197+
3198+<!-- _Tags in italics are not available in public.ecr.aws/lts/squid but are shown here for completeness._ -->
3199+
3200+| Channel Tag | ![LTS](https://assets.ubuntu.com/v1/0a5ff561-LTS%402x.png?h=17) until | ![ESM](https://assets.ubuntu.com/v1/572f3fbd-ESM%402x.png?h=17) until | Currently | Architectures |
3201+|---|---|---|---|---|
3202+ | **`4.10-20.04_beta`** &nbsp;&nbsp; | - | - | Squid 4.10 on Ubuntu&nbsp;20.04&nbsp;LTS| `amd64`, `arm64`, `ppc64el`, `s390x` |
3203+| _`track_risk`_ |
3204+
3205+Channel Tag shows the most stable channel for that track ordered `stable`, `candidate`, `beta`, `edge`. More risky channels are always implicitly available. So if `beta` is listed, you can also pull `edge`. If `candidate` is listed, you can pull `beta` and `edge`. When `stable` is listed, all four are available. Images are guaranteed to progress through the sequence `edge`, `beta`, `candidate` before `stable`.
3206+
3207+### Commercial use and Extended Security Maintenance channels
3208+If your usage includes redistribution or requires unavailable channels/versions, please [get in touch with the Canonical team](https://ubuntu.com/security/docker-images#get-in-touch) (or using rocks@canonical.com).
3209+
3210+
3211+If your usage includes redistribution, please [contact Canonical](https://ubuntu.com/security/docker-images#get-in-touch).
3212+
3213+## Docker CLI
3214+
3215+Launch this image locally:
3216+
3217+```sh
3218+docker run -d --name squid-container -e TZ=UTC -p 3128:3128 public.ecr.aws/lts/squid:4.10-20.04_beta
3219+```
3220+Access your Squid proxy at `localhost:3128`.
3221+
3222+#### Parameters
3223+
3224+| Parameter | Description |
3225+|---|---|
3226+| `-e TZ=UTC` | Timezone. |
3227+| `-p 3128:3128` | Expose the proxy service |
3228+| `-v /path/to/logs:/var/log/squid` | Volume to store squid logs |
3229+| `-v /path/to/data:/var/spool/squid` | Volume to store the squid cache |
3230+
3231+
3232+#### Testing/Debugging
3233+
3234+To debug the container:
3235+
3236+```sh
3237+docker logs -f squid-container
3238+```
3239+
3240+To get an interactive shell:
3241+
3242+```sh
3243+docker exec -it squid-container /bin/bash
3244+```
3245+
3246+
3247+## Deploy with Kubernetes
3248+
3249+Works with any Kubernetes; if you don't have one, we recommend you [install MicroK8s](https://microk8s.io/) and `microk8s.enable dns storage` then `snap alias microk8s.kubectl kubectl`.
3250+
3251+Download
3252+[squid.conf](https://git.launchpad.net/~canonical-server/ubuntu-docker-images/+git/squid/plain/examples/config/squid.conf) and
3253+[squid-deployment.yml](https://git.launchpad.net/~canonical-server/ubuntu-docker-images/+git/squid/plain/examples/squid-deployment.yml) and set `containers.squid.image` in `squid-deployment.yml` to your chosen channel tag (e.g. `public.ecr.aws/lts/squid:4.10-20.04_beta`), then:
3254+
3255+```sh
3256+kubectl create configmap squid-config --from-file=squid=squid.conf
3257+kubectl apply -f squid-deployment.yml
3258+```
3259+
3260+You can now access the squid proxy on port 3128
3261+
3262+## Bugs and feature requests
3263+
3264+If you find a bug in our image or want to request a specific feature, please file a bug here:
3265+
3266+[https://bugs.launchpad.net/ubuntu-docker-images/+filebug](https://bugs.launchpad.net/ubuntu-docker-images/+filebug)
3267+
3268+Please title the bug "`squid: <issue summary>`". Make sure to include the digest of the image you are using, from:
3269+
3270+```sh
3271+docker images --no-trunc --quiet public.ecr.aws/lts/squid:<tag>
3272+```
3273+
3274diff --git a/out-lts/telegraf.md b/docs/public.ecr.aws/lts/telegraf.md
3275similarity index 76%
3276rename from out-lts/telegraf.md
3277rename to docs/public.ecr.aws/lts/telegraf.md
3278index 778a1e4..69b85ea 100644
3279--- a/out-lts/telegraf.md
3280+++ b/docs/public.ecr.aws/lts/telegraf.md
3281@@ -1,37 +1,41 @@
3282-# Telegraf LTS Docker Image
3283+# Telegraf™ software LTS Docker Image
3284+ **This repository has no LTS channel yet, please [get in touch](https://ubuntu.com/security/docker-images#get-in-touch) if you need one.**
3285
3286 ## LTS Docker Image Portfolio
3287-The [LTS Docker Image Portfolio](https://ubuntu.com/security/docker-images) are consistent, compliant, minimal and secure images with Extended Security Maintenance (ESM) commitments from Canonical. This repository is exempted from per-user rate limits.
3288+The [LTS Docker Image Portfolio](https://ubuntu.com/security/docker-images) are consistent, compliant, minimal and secure images with Extended Security Maintenance (ESM) commitments from Canonical.
3289
3290-
3291-## About Telegraf
3292+## About Telegraf™ software
3293
3294 Telegraf is an agent for collecting, processing, aggregating, and writing metrics. Design goals are to have a minimal memory footprint with a plugin system so that developers in the community can easily add support for collecting metrics. Read more on the [Telegraf website](https://www.influxdata.com/time-series-platform/telegraf/).
3295
3296
3297 ## Tags and Architectures
3298 ![LTS](https://assets.ubuntu.com/v1/0a5ff561-LTS%402x.png?h=17)
3299-Up to 5 years free security maintenance `from lts/telegraf`.
3300+Up to 5 years free security maintenance from this repository.
3301
3302 ![ESM](https://assets.ubuntu.com/v1/572f3fbd-ESM%402x.png?h=17)
3303-Up to 10 years customer security maintenance `from store/canonical/telegraf`.
3304+Up to 10 years customer security maintenance `from canonical/telegraf`. [Request access](https://ubuntu.com/security/docker-images#get-in-touch).
3305
3306-_Tags in italics are not available in lts/telegraf but are shown here for completeness._
3307+<!-- _Tags in italics are not available in public.ecr.aws/lts/telegraf but are shown here for completeness._ -->
3308
3309 | Channel Tag | ![LTS](https://assets.ubuntu.com/v1/0a5ff561-LTS%402x.png?h=17) until | ![ESM](https://assets.ubuntu.com/v1/572f3fbd-ESM%402x.png?h=17) until | Currently | Architectures |
3310 |---|---|---|---|---|
3311 | _`track_risk`_ |
3312
3313-Channel tag shows the most stable channel for that track ordered `stable`, `candidate`, `beta`, `edge`. More risky channels are always implicitly available. So if `beta` is listed, you can also pull `edge`. If `candidate` is listed, you can pull beta and edge. When `stable` is listed, all four are available. Images are guaranteed to progress through the sequence `edge`, `beta`, `candidate` before `stable`.
3314+Channel Tag shows the most stable channel for that track ordered `stable`, `candidate`, `beta`, `edge`. More risky channels are always implicitly available. So if `beta` is listed, you can also pull `edge`. If `candidate` is listed, you can pull `beta` and `edge`. When `stable` is listed, all four are available. Images are guaranteed to progress through the sequence `edge`, `beta`, `candidate` before `stable`.
3315+
3316+### Commercial use and Extended Security Maintenance channels
3317+If your usage includes redistribution or requires unavailable channels/versions, please [get in touch with the Canonical team](https://ubuntu.com/security/docker-images#get-in-touch) (or using rocks@canonical.com).
3318
3319-## Usage
3320
3321 If your usage includes redistribution, please [contact Canonical](https://ubuntu.com/security/docker-images#get-in-touch).
3322
3323+## Docker CLI
3324+
3325 Launch this image locally:
3326
3327 ```sh
3328-docker run -d --name telegraf-container -e TZ=UTC -p 30273:9273 lts/telegraf:1.15-20.04_beta
3329+docker run -d --name telegraf-container -e TZ=UTC -p 30273:9273 public.ecr.aws/lts/telegraf:latest
3330 ```
3331 Access your Telegraf server at `localhost:30273`.
3332
3333@@ -65,7 +69,7 @@ Works with any Kubernetes; if you don't have one, we recommend you [install Micr
3334
3335 Download
3336 [telegraf.conf](https://git.launchpad.net/~canonical-server/ubuntu-docker-images/+git/telegraf/plain/examples/config/telegraf.conf) and
3337-[telegraf-deployment.yml](https://git.launchpad.net/~canonical-server/ubuntu-docker-images/+git/telegraf/plain/examples/telegraf-deployment.yml) and set `containers.telegraf.image` in `telegraf-deployment.yml` to your chosen channel tag (e.g. `lts/telegraf:1.15-20.04_beta`), then:
3338+[telegraf-deployment.yml](https://git.launchpad.net/~canonical-server/ubuntu-docker-images/+git/telegraf/plain/examples/telegraf-deployment.yml) and set `containers.telegraf.image` in `telegraf-deployment.yml` to your chosen channel tag (e.g. `public.ecr.aws/lts/telegraf:latest`), then:
3339
3340 ```sh
3341 kubectl create configmap telegraf-config --from-file=main-config=telegraf.conf
3342@@ -83,6 +87,6 @@ If you find a bug in our image or want to request a specific feature, please fil
3343 Please title the bug "`telegraf: <issue summary>`". Make sure to include the digest of the image you are using, from:
3344
3345 ```sh
3346-docker images --no-trunc --quiet lts/telegraf:<tag>
3347+docker images --no-trunc --quiet public.ecr.aws/lts/telegraf:<tag>
3348 ```
3349
3350diff --git a/docs/public.ecr.aws/ubuntu/apache2.md b/docs/public.ecr.aws/ubuntu/apache2.md
3351new file mode 100644
3352index 0000000..d433638
3353--- /dev/null
3354+++ b/docs/public.ecr.aws/ubuntu/apache2.md
3355@@ -0,0 +1,97 @@
3356+# Apache2 | Ubuntu
3357+
3358+Current Apache2 Docker Image [from Canonical](https://ubuntu.com/security/docker-images), based on Ubuntu. Receives security updates and rolls to newer Apache2 or Ubuntu release.
3359+For [long-term support (LTS)](https://ubuntu.com/security/docker-images) versions of this image, see [public.ecr.aws/lts/apache2](https://gallery.ecr.aws/lts/apache2).
3360+
3361+## About Apache2
3362+
3363+The Apache HTTP Server Project's goal is to build a secure, efficient and extensible HTTP server as standards-compliant open source software. The result has long been the number one web server on the Internet. Read more on the [apache2 website](https://httpd.apache.org/).
3364+
3365+
3366+## Tags and Architectures
3367+![LTS](https://assets.ubuntu.com/v1/0a5ff561-LTS%402x.png?h=17)
3368+Up to 5 years free security maintenance [from public.ecr.aws/lts/apache2](https://gallery.ecr.aws/lts/${repo}).
3369+
3370+![ESM](https://assets.ubuntu.com/v1/572f3fbd-ESM%402x.png?h=17)
3371+Up to 10 years customer security maintenance `from canonical/apache2`. [Request access](https://ubuntu.com/security/docker-images#get-in-touch).
3372+
3373+| Channel Tag | | | Currently | Architectures |
3374+|---|---|---|---|---|
3375+ | **`2.4-21.04_beta`** &nbsp;&nbsp; | [](https://gallery.ecr.aws/lts/apache2) | | Apache2 2.4 on Ubuntu&nbsp;21.04&nbsp;| `amd64`, `arm64`, `ppc64el`, `s390x` |
3376+| _`track_risk`_ |
3377+
3378+_The following tags are not available in public.ecr.aws/ubuntu/apache2 but are shown here for completeness:_
3379+
3380+| Channel Tag | | | Currently | Architectures |
3381+|---|---|---|---|---|
3382+ | _**`2.4-20.04_beta`** &nbsp;&nbsp;_ | [![LTS](https://assets.ubuntu.com/v1/0a5ff561-LTS%402x.png?h=17)](https://gallery.ecr.aws/lts/apache2) | | Apache2 2.4.41 on Ubuntu&nbsp;20.04&nbsp;LTS| `amd64`, `arm64`, `ppc64el`, `s390x` |
3383+| _`track_risk`_ |
3384+
3385+
3386+Channel Tag shows the most stable channel for that track ordered `stable`, `candidate`, `beta`, `edge`. More risky channels are always implicitly available. So if `beta` is listed, you can also pull `edge`. If `candidate` is listed, you can pull `beta` and `edge`. When `stable` is listed, all four are available. Images are guaranteed to progress through the sequence `edge`, `beta`, `candidate` before `stable`.
3387+
3388+### Commercial use and Extended Security Maintenance channels
3389+If your usage includes commercial redistribution or requires unavailable channels/versions, please [get in touch with the Canonical team](https://ubuntu.com/security/docker-images#get-in-touch) (or using rocks@canonical.com).
3390+
3391+## Docker CLI
3392+
3393+Launch this image locally:
3394+
3395+```sh
3396+docker run -d --name apache2-container -e TZ=UTC -p 8080:80 public.ecr.aws/ubuntu/apache2:2.4-20.04_beta
3397+```
3398+Access your Apache2 server at `http://localhost:8080`.
3399+
3400+#### Parameters
3401+
3402+| Parameter | Description |
3403+|---|---|
3404+| `-e TZ=UTC` | Timezone. |
3405+| `-p 8080:80` | Expose Apache2 on `localhost:8080`. |
3406+| `-v /local/path/to/website:/var/www/html` | Mount and serve a local website. |
3407+| `-v /path/to/apache2.conf:/etc/apache2/apache2.conf` | Local [configuration file](https://httpd.apache.org/docs/2.4/) `apache2.conf` (try [this example](https://git.launchpad.net/~canonical-server/ubuntu-docker-images/+git/apache2/plain/examples/config/apache2.conf)). |
3408+
3409+
3410+#### Testing/Debugging
3411+
3412+To debug the container:
3413+
3414+```sh
3415+docker logs -f apache2-container
3416+```
3417+
3418+To get an interactive shell:
3419+
3420+```sh
3421+docker exec -it apache2-container /bin/bash
3422+```
3423+
3424+
3425+## Deploy with Kubernetes
3426+
3427+Works with any Kubernetes; if you don't have one, we recommend you [install MicroK8s](https://microk8s.io/) and `microk8s.enable dns storage` then `snap alias microk8s.kubectl kubectl`.
3428+
3429+Download
3430+[apache2.conf](https://git.launchpad.net/~canonical-server/ubuntu-docker-images/+git/apache2/plain/examples/config/apache2.conf), [index.html](https://git.launchpad.net/~canonical-server/ubuntu-docker-images/+git/apache2/plain/examples/config/html/index.html) and
3431+[apache2-deployment.yml](https://git.launchpad.net/~canonical-server/ubuntu-docker-images/+git/apache2/plain/examples/apache2-deployment.yml) and set `containers.apache2.image` in `apache2-deployment.yml` to your chosen channel tag (e.g. `public.ecr.aws/ubuntu/apache2:2.4-20.04_beta`), then:
3432+
3433+```sh
3434+kubectl create configmap apache2-config --from-file=apache2=apache2.conf --from-file=apache2-site=index.html
3435+kubectl apply -f apache2-deployment.yml
3436+```
3437+
3438+You will now be able to connect to the apache2 server on `http://localhost:30080`.
3439+
3440+## Bugs and feature requests
3441+
3442+If you find a bug in our image or want to request a specific feature, please file a bug here:
3443+
3444+[https://bugs.launchpad.net/ubuntu-docker-images/+filebug](https://bugs.launchpad.net/ubuntu-docker-images/+filebug)
3445+
3446+Please title the bug "`apache2: <issue summary>`". Make sure to include the digest of the image you are using, from:
3447+
3448+```sh
3449+docker images --no-trunc --quiet public.ecr.aws/ubuntu/apache2:<tag>
3450+```
3451+
3452+
3453diff --git a/docs/public.ecr.aws/ubuntu/bind9.md b/docs/public.ecr.aws/ubuntu/bind9.md
3454new file mode 100644
3455index 0000000..bc6ea86
3456--- /dev/null
3457+++ b/docs/public.ecr.aws/ubuntu/bind9.md
3458@@ -0,0 +1,96 @@
3459+# Bind9 | Ubuntu
3460+
3461+Current Bind9 Docker Image [from Canonical](https://ubuntu.com/security/docker-images), based on Ubuntu. Receives security updates and rolls to newer Bind9 or Ubuntu release.
3462+For [long-term support (LTS)](https://ubuntu.com/security/docker-images) versions of this image, see [public.ecr.aws/lts/bind9](https://gallery.ecr.aws/lts/bind9).
3463+
3464+## About Bind9
3465+
3466+BIND 9 provides software for Domain Name System (DNS) management including both defining domain names authoritatively for a given DNS zone, and recursively resolving domain names to their IP addresses. In addition to BIND 9's DNS server itself, `named`, this container also includes tools for performing DNS queries and dynamic updates. Read more on the [BIND 9 website](https://www.isc.org/bind/).
3467+
3468+
3469+## Tags and Architectures
3470+![LTS](https://assets.ubuntu.com/v1/0a5ff561-LTS%402x.png?h=17)
3471+Up to 5 years free security maintenance [from public.ecr.aws/lts/bind9](https://gallery.ecr.aws/lts/${repo}).
3472+
3473+![ESM](https://assets.ubuntu.com/v1/572f3fbd-ESM%402x.png?h=17)
3474+Up to 10 years customer security maintenance `from canonical/bind9`. [Request access](https://ubuntu.com/security/docker-images#get-in-touch).
3475+
3476+| Channel Tag | | | Currently | Architectures |
3477+|---|---|---|---|---|
3478+ | _**`9.16-20.04_beta`** &nbsp;&nbsp;_ | [![LTS](https://assets.ubuntu.com/v1/0a5ff561-LTS%402x.png?h=17)](https://gallery.ecr.aws/lts/bind9) | | Bind9 9.16.15 on Ubuntu&nbsp;20.04&nbsp;LTS| `amd64`, `arm64`, `ppc64el`, `s390x` |
3479+| _`track_risk`_ |
3480+
3481+_The following tags are not available in public.ecr.aws/ubuntu/bind9 but are shown here for completeness:_
3482+
3483+| Channel Tag | | | Currently | Architectures |
3484+|---|---|---|---|---|
3485+ | _**`9.16-20.04_beta`** &nbsp;&nbsp;_ | [![LTS](https://assets.ubuntu.com/v1/0a5ff561-LTS%402x.png?h=17)](https://gallery.ecr.aws/lts/bind9) | | Bind9 9.16.15 on Ubuntu&nbsp;20.04&nbsp;LTS| `amd64`, `arm64`, `ppc64el`, `s390x` |
3486+| _`track_risk`_ |
3487+
3488+
3489+Channel Tag shows the most stable channel for that track ordered `stable`, `candidate`, `beta`, `edge`. More risky channels are always implicitly available. So if `beta` is listed, you can also pull `edge`. If `candidate` is listed, you can pull `beta` and `edge`. When `stable` is listed, all four are available. Images are guaranteed to progress through the sequence `edge`, `beta`, `candidate` before `stable`.
3490+
3491+### Commercial use and Extended Security Maintenance channels
3492+If your usage includes commercial redistribution or requires unavailable channels/versions, please [get in touch with the Canonical team](https://ubuntu.com/security/docker-images#get-in-touch) (or using rocks@canonical.com).
3493+
3494+## Docker CLI
3495+
3496+Launch this image locally:
3497+
3498+```sh
3499+docker run -d --name bind9-container -e TZ=UTC -p 30053:53 public.ecr.aws/ubuntu/bind9:9.16-20.04_beta
3500+```
3501+Access your Bind9 server at `localhost:30053`
3502+
3503+#### Parameters
3504+
3505+| Parameter | Description |
3506+|---|---|
3507+| `-e TZ=UTC` | Timezone. |
3508+| `-p 1803233` | Expose bind9 on `localhost:30053`. |
3509+| `-v /path/to/bind/configuration:/etc/bind/named.conf` | Local [configuration file](https://bind9.readthedocs.io/en/latest/reference.html) `named.conf` (try [this example](https://git.launchpad.net/~canonical-server/ubuntu-docker-images/+git/bind9/plain/examples/caching-nameserver/named.conf.options)). |
3510+| `-v /path/to/cached/data:/var/cache/bind` | Location where locally cached data can be dumped. |
3511+| `-v /path/to/resource/records:/var/lib/bind` | Location of Resource Records defining various domain information. |
3512+
3513+
3514+#### Testing/Debugging
3515+
3516+To debug the container:
3517+
3518+```sh
3519+docker logs -f bind9-container
3520+```
3521+
3522+To get an interactive shell:
3523+
3524+```sh
3525+docker exec -it bind9-container /bin/bash
3526+```
3527+
3528+
3529+## Deploy with Kubernetes
3530+
3531+Works with any Kubernetes; if you don't have one, we recommend you [install MicroK8s](https://microk8s.io/) and `microk8s.enable dns storage` then `snap alias microk8s.kubectl kubectl`.
3532+
3533+Download
3534+[bind9-deployment.yml](https://git.launchpad.net/~canonical-server/ubuntu-docker-images/+git/bind9/plain/examples/bind9-deployment.yml) and set `containers.bind9.image` in `bind9-deployment.yml` to your chosen channel tag (e.g. `public.ecr.aws/ubuntu/bind9:9.16-20.04_beta`), then:
3535+
3536+```sh
3537+kubectl apply -f bind9-deployment.yml
3538+```
3539+
3540+You will now be able to connect to the Bind9 server on localhost:30053`.
3541+
3542+## Bugs and feature requests
3543+
3544+If you find a bug in our image or want to request a specific feature, please file a bug here:
3545+
3546+[https://bugs.launchpad.net/ubuntu-docker-images/+filebug](https://bugs.launchpad.net/ubuntu-docker-images/+filebug)
3547+
3548+Please title the bug "`bind9: <issue summary>`". Make sure to include the digest of the image you are using, from:
3549+
3550+```sh
3551+docker images --no-trunc --quiet public.ecr.aws/ubuntu/bind9:<tag>
3552+```
3553+
3554+
3555diff --git a/docs/public.ecr.aws/ubuntu/cassandra.md b/docs/public.ecr.aws/ubuntu/cassandra.md
3556new file mode 100644
3557index 0000000..f0eb9ad
3558--- /dev/null
3559+++ b/docs/public.ecr.aws/ubuntu/cassandra.md
3560@@ -0,0 +1,92 @@
3561+# Cassandra | Ubuntu
3562+
3563+Current Cassandra Docker Image [from Canonical](https://ubuntu.com/security/docker-images), based on Ubuntu. Receives security updates and rolls to newer Cassandra or Ubuntu release.
3564+
3565+## About Cassandra
3566+
3567+Apache Cassandra is an open source NoSQL distributed database trusted by thousands of companies for scalability and high availability without compromising performance. Linear scalability and proven fault-tolerance on commodity hardware or cloud infrastructure make it a good platform for mission-critical data.
3568+
3569+
3570+## Tags and Architectures
3571+![LTS](https://assets.ubuntu.com/v1/0a5ff561-LTS%402x.png?h=17)
3572+Up to 5 years free security maintenance. [Request access](https://ubuntu.com/security/docker-images#get-in-touch).
3573+
3574+![ESM](https://assets.ubuntu.com/v1/572f3fbd-ESM%402x.png?h=17)
3575+Up to 10 years customer security maintenance `from canonical/cassandra`. [Request access](https://ubuntu.com/security/docker-images#get-in-touch).
3576+
3577+| Channel Tag | | | Currently | Architectures |
3578+|---|---|---|---|---|
3579+ | **`4.0-21.04_beta`** &nbsp;&nbsp; | [](https://gallery.ecr.aws/lts/cassandra) | | Cassandra 4.0 on Ubuntu&nbsp;21.04&nbsp;| `amd64`, `arm64`, `ppc64el`, `s390x` |
3580+ | `4.0-20.04_beta` &nbsp;&nbsp; | [](https://gallery.ecr.aws/lts/cassandra) | | Cassandra 4.0 on Ubuntu&nbsp;20.04&nbsp;LTS| `amd64`, `arm64`, `ppc64el`, `s390x` |
3581+| _`track_risk`_ |
3582+
3583+
3584+Channel Tag shows the most stable channel for that track ordered `stable`, `candidate`, `beta`, `edge`. More risky channels are always implicitly available. So if `beta` is listed, you can also pull `edge`. If `candidate` is listed, you can pull `beta` and `edge`. When `stable` is listed, all four are available. Images are guaranteed to progress through the sequence `edge`, `beta`, `candidate` before `stable`.
3585+
3586+### Commercial use and Extended Security Maintenance channels
3587+If your usage includes commercial redistribution or requires unavailable channels/versions, please [get in touch with the Canonical team](https://ubuntu.com/security/docker-images#get-in-touch) (or using rocks@canonical.com). **This repository has no LTS channel yet, please get in touch if you need one.**
3588+
3589+## Docker CLI
3590+
3591+Launch this image locally:
3592+
3593+```sh
3594+docker run -d --name cassandra-container -e TZ=UTC -p 7000:7000 -p 7001:7001 -p 7199:7199 -p 9042:9042 -p 9160:9160 public.ecr.aws/ubuntu/cassandra:4.0-21.04_beta
3595+```
3596+Access your Cassandra server with `cqlsh localhost 9042`.
3597+
3598+#### Parameters
3599+
3600+| Parameter | Description |
3601+|---|---|
3602+| `-e TZ=UTC` | Timezone. |
3603+| `-p 7000:7000` | Expose itra-node communication |
3604+| `-p 7001:7001` | Expose TLS itra-node communication |
3605+| `-p 7199:7199` | Expose JMX |
3606+| `-p 9042:9042` | Expose CQL |
3607+| `-p 9160:9160` | Expose thrift service |
3608+| `-v /local/path/to/data:/var/lib/cassandra` | Volume to store Cassandra data |
3609+| `-v /path/to/logs:/var/log/cassandra` | Volume to store cassandra logs |
3610+
3611+
3612+#### Testing/Debugging
3613+
3614+To debug the container:
3615+
3616+```sh
3617+docker logs -f cassandra-container
3618+```
3619+
3620+To get an interactive shell:
3621+
3622+```sh
3623+docker exec -it cassandra-container /bin/bash
3624+```
3625+
3626+
3627+## Deploy with Kubernetes
3628+
3629+Works with any Kubernetes; if you don't have one, we recommend you [install MicroK8s](https://microk8s.io/) and `microk8s.enable dns storage` then `snap alias microk8s.kubectl kubectl`.
3630+
3631+Download
3632+[cassandra-deployment.yml](https://git.launchpad.net/~canonical-server/ubuntu-docker-images/+git/cassandra/plain/examples/cassandra-deployment.yml) and set `containers.cassandra.image` in `cassandra-deployment.yml` to your chosen channel tag (e.g. `public.ecr.aws/ubuntu/cassandra:4.0-21.04_beta`), then:
3633+
3634+```sh
3635+kubectl apply -f cassandra-deployment.yml
3636+```
3637+
3638+You can now access the cassandra server on port 9042 (e.g., cqlsh localhost 9042)
3639+
3640+## Bugs and feature requests
3641+
3642+If you find a bug in our image or want to request a specific feature, please file a bug here:
3643+
3644+[https://bugs.launchpad.net/ubuntu-docker-images/+filebug](https://bugs.launchpad.net/ubuntu-docker-images/+filebug)
3645+
3646+Please title the bug "`cassandra: <issue summary>`". Make sure to include the digest of the image you are using, from:
3647+
3648+```sh
3649+docker images --no-trunc --quiet public.ecr.aws/ubuntu/cassandra:<tag>
3650+```
3651+
3652+
3653diff --git a/docs/public.ecr.aws/ubuntu/cortex.md b/docs/public.ecr.aws/ubuntu/cortex.md
3654new file mode 100644
3655index 0000000..7896844
3656--- /dev/null
3657+++ b/docs/public.ecr.aws/ubuntu/cortex.md
3658@@ -0,0 +1,96 @@
3659+# Cortex | Ubuntu
3660+
3661+Current Cortex Docker Image [from Canonical](https://ubuntu.com/security/docker-images), based on Ubuntu. Receives security updates and rolls to newer Cortex or Ubuntu release.
3662+
3663+## About Cortex
3664+
3665+Cortex provides horizontally scalable, highly available, multi-tenant, long term storage for Prometheus.
3666+
3667+* Horizontally scalable: Cortex can run across multiple machines in a cluster, exceeding the throughput and storage of a single machine. This enables you to send the metrics from multiple Prometheus servers to a single Cortex cluster and run "globally aggregated" queries across all data in a single place.
3668+* Highly available: When run in a cluster, Cortex can replicate data between machines. This allows you to survive machine failure without gaps in your graphs.
3669+* Multi-tenant: Cortex can isolate data and queries from multiple different independent Prometheus sources in a single cluster, allowing untrusted parties to share the same cluster.
3670+* Long term storage: Cortex supports Amazon DynamoDB, Google Bigtable, Cassandra, S3, GCS and Microsoft Azure for long term storage of metric data. This allows you to durably store data for longer than the lifetime of any single machine, and use this data for long term capacity planning.
3671+
3672+Read more on the [Cortex website](https://cortexmetrics.io/).
3673+
3674+
3675+## Tags and Architectures
3676+![LTS](https://assets.ubuntu.com/v1/0a5ff561-LTS%402x.png?h=17)
3677+Up to 5 years free security maintenance. [Request access](https://ubuntu.com/security/docker-images#get-in-touch).
3678+
3679+![ESM](https://assets.ubuntu.com/v1/572f3fbd-ESM%402x.png?h=17)
3680+Up to 10 years customer security maintenance `from canonical/cortex`. [Request access](https://ubuntu.com/security/docker-images#get-in-touch).
3681+
3682+| Channel Tag | | | Currently | Architectures |
3683+|---|---|---|---|---|
3684+ | **`1.7-21.04_beta`** &nbsp;&nbsp; | [](https://gallery.ecr.aws/lts/cortex) | | Cortex 1.7 on Ubuntu&nbsp;21.04&nbsp;| `amd64`, `arm64`, `ppc64el`, `s390x` |
3685+ | `1.4-20.04_beta` &nbsp;&nbsp; | [](https://gallery.ecr.aws/lts/cortex) | | Cortex 1.4.0 on Ubuntu&nbsp;20.04&nbsp;LTS| `amd64`, `arm64`, `ppc64el`, `s390x` |
3686+| _`track_risk`_ |
3687+
3688+
3689+Channel Tag shows the most stable channel for that track ordered `stable`, `candidate`, `beta`, `edge`. More risky channels are always implicitly available. So if `beta` is listed, you can also pull `edge`. If `candidate` is listed, you can pull `beta` and `edge`. When `stable` is listed, all four are available. Images are guaranteed to progress through the sequence `edge`, `beta`, `candidate` before `stable`.
3690+
3691+### Commercial use and Extended Security Maintenance channels
3692+If your usage includes commercial redistribution or requires unavailable channels/versions, please [get in touch with the Canonical team](https://ubuntu.com/security/docker-images#get-in-touch) (or using rocks@canonical.com). **This repository has no LTS channel yet, please get in touch if you need one.**
3693+
3694+## Docker CLI
3695+
3696+Launch this image locally:
3697+
3698+```sh
3699+docker run -d --name cortex-container -e TZ=UTC -p 32709:9009 public.ecr.aws/ubuntu/cortex:1.7-21.04_beta
3700+```
3701+Access your Cortex server at `http://localhost:32709`.
3702+
3703+#### Parameters
3704+
3705+| Parameter | Description |
3706+|---|---|
3707+| `-e TZ=UTC` | Timezone. |
3708+| `-p 32709:9009` | Expose Cortex on `localhost:32709`. |
3709+| `-v /my/local/cortex.yaml:/etc/cortex/cortex.yaml` | Local [configuration file](https://cortexmetrics.io/docs/configuration/) `cortex.yaml` (try [this example](https://git.launchpad.net/~canonical-server/ubuntu-docker-images/+git/cortex/plain/oci/examples/config/cortex.yaml)). |
3710+
3711+
3712+#### Testing/Debugging
3713+
3714+To debug the container:
3715+
3716+```sh
3717+docker logs -f cortex-container
3718+```
3719+
3720+To get an interactive shell:
3721+
3722+```sh
3723+docker exec -it cortex-container /bin/bash
3724+```
3725+
3726+
3727+## Deploy with Kubernetes
3728+
3729+Works with any Kubernetes; if you don't have one, we recommend you [install MicroK8s](https://microk8s.io/) and `microk8s.enable dns storage` then `snap alias microk8s.kubectl kubectl`.
3730+
3731+Download
3732+[cortex.yaml](https://git.launchpad.net/~canonical-server/ubuntu-docker-images/+git/cortex/plain/oci/examples/config/cortex.yaml) and
3733+[cortex-deployment.yml](https://git.launchpad.net/~canonical-server/ubuntu-docker-images/+git/cortex/plain/oci/examples/cortex-deployment.yml) and set `containers.cortex.image` in `cortex-deployment.yml` to your chosen channel tag (e.g. `public.ecr.aws/ubuntu/cortex:1.7-21.04_beta`), then:
3734+
3735+```sh
3736+kubectl create configmap cortex-config --from-file=main-config=cortex.yaml
3737+kubectl apply -f cortex-deployment.yml
3738+```
3739+
3740+You will now be able to connect to the Cortex server on `localhost:32709`.
3741+
3742+## Bugs and feature requests
3743+
3744+If you find a bug in our image or want to request a specific feature, please file a bug here:
3745+
3746+[https://bugs.launchpad.net/ubuntu-docker-images/+filebug](https://bugs.launchpad.net/ubuntu-docker-images/+filebug)
3747+
3748+Please title the bug "`cortex: <issue summary>`". Make sure to include the digest of the image you are using, from:
3749+
3750+```sh
3751+docker images --no-trunc --quiet public.ecr.aws/ubuntu/cortex:<tag>
3752+```
3753+
3754+
3755diff --git a/docs/public.ecr.aws/ubuntu/grafana.md b/docs/public.ecr.aws/ubuntu/grafana.md
3756new file mode 100644
3757index 0000000..87b4e80
3758--- /dev/null
3759+++ b/docs/public.ecr.aws/ubuntu/grafana.md
3760@@ -0,0 +1,90 @@
3761+# Grafana™ software | Ubuntu
3762+
3763+Current Grafana™ software Docker Image [from Canonical](https://ubuntu.com/security/docker-images), based on Ubuntu. Receives security updates and rolls to newer Grafana™ software or Ubuntu release.
3764+
3765+## About Grafana™ software
3766+
3767+Grafana is a feature rich metrics dashboard and graph editor for Cloudwatch, Elasticsearch, Graphite, InfluxDB, OpenTSB, Prometheus, and Hosted Metrics. Read more on the [Grafana website](https://grafana.com/docs/).
3768+
3769+
3770+## Tags and Architectures
3771+![LTS](https://assets.ubuntu.com/v1/0a5ff561-LTS%402x.png?h=17)
3772+Up to 5 years free security maintenance. [Request access](https://ubuntu.com/security/docker-images#get-in-touch).
3773+
3774+![ESM](https://assets.ubuntu.com/v1/572f3fbd-ESM%402x.png?h=17)
3775+Up to 10 years customer security maintenance `from canonical/grafana`. [Request access](https://ubuntu.com/security/docker-images#get-in-touch).
3776+
3777+| Channel Tag | | | Currently | Architectures |
3778+|---|---|---|---|---|
3779+ | **`7.4-21.04_beta`** &nbsp;&nbsp; | [](https://gallery.ecr.aws/lts/grafana) | | Grafana™ software 7.4 on Ubuntu&nbsp;21.04&nbsp;| `amd64`, `arm64`, `ppc64el`, `s390x` |
3780+ | `7.2-20.04_beta` &nbsp;&nbsp; | [](https://gallery.ecr.aws/lts/grafana) | | Grafana™ software 7.2.0 on Ubuntu&nbsp;20.04&nbsp;LTS| `amd64`, `arm64`, `ppc64el`, `s390x` |
3781+| _`track_risk`_ |
3782+
3783+
3784+Channel Tag shows the most stable channel for that track ordered `stable`, `candidate`, `beta`, `edge`. More risky channels are always implicitly available. So if `beta` is listed, you can also pull `edge`. If `candidate` is listed, you can pull `beta` and `edge`. When `stable` is listed, all four are available. Images are guaranteed to progress through the sequence `edge`, `beta`, `candidate` before `stable`.
3785+
3786+### Commercial use and Extended Security Maintenance channels
3787+If your usage includes commercial redistribution or requires unavailable channels/versions, please [get in touch with the Canonical team](https://ubuntu.com/security/docker-images#get-in-touch) (or using rocks@canonical.com). **This repository has no LTS channel yet, please get in touch if you need one.**
3788+
3789+## Docker CLI
3790+
3791+Launch this image locally:
3792+
3793+```sh
3794+docker run -d --name grafana-container -e TZ=UTC -p 30000:3000 public.ecr.aws/ubuntu/grafana:7.4-21.04_beta
3795+```
3796+Access your Grafana server at `localhost:30000`.
3797+
3798+#### Parameters
3799+
3800+| Parameter | Description |
3801+|---|---|
3802+| `-e TZ=UTC` | Timezone. |
3803+| `-p 30000:3000` | Expose Grafana on `localhost:30000`. |
3804+| `-v /path/to/grafana/provisioning/files/:/etc/grafana/provisioning/` | Pass a directory with files to provision a Grafana `datasource` and `dashboard` (see [documentation](https://grafana.com/docs/grafana/latest/administration/provisioning/)). |
3805+| `-v /path/to/persisted/data:/var/lib/grafana` | Persist data with a voulme instead of initializing a new database for each newly launched container. |
3806+
3807+
3808+#### Testing/Debugging
3809+
3810+To debug the container:
3811+
3812+```sh
3813+docker logs -f grafana-container
3814+```
3815+
3816+To get an interactive shell:
3817+
3818+```sh
3819+docker exec -it grafana-container /bin/bash
3820+```
3821+
3822+
3823+## Deploy with Kubernetes
3824+
3825+Works with any Kubernetes; if you don't have one, we recommend you [install MicroK8s](https://microk8s.io/) and `microk8s.enable dns storage` then `snap alias microk8s.kubectl kubectl`.
3826+
3827+Download
3828+[datasource.yml](https://git.launchpad.net/~canonical-server/ubuntu-docker-images/+git/grafana/plain/examples/config/datasource.yml), [dashboard.yml](https://git.launchpad.net/~canonical-server/ubuntu-docker-images/+git/grafana/plain/examples/config/dashboard.yml), [system-stats-dashboard.json](https://git.launchpad.net/~canonical-server/ubuntu-docker-images/+git/grafana/plain/examples/config/system-stats-dashboard.json) and
3829+[grafana-deployment.yml](https://git.launchpad.net/~canonical-server/ubuntu-docker-images/+git/grafana/plain/examples/grafana-deployment.yml) and set `containers.grafana.image` in `grafana-deployment.yml` to your chosen channel tag (e.g. `public.ecr.aws/ubuntu/grafana:7.4-21.04_beta`), then:
3830+
3831+```sh
3832+kubectl create configmap grafana-config --from-file=grafana-datasource=datasource.yml --from-file=grafana-dashboard-definition=dashboard.yml --from-file=grafana-dashboard=system-stats-dashboard.json
3833+kubectl apply -f grafana-deployment.yml
3834+```
3835+
3836+You will now be able to connect to the Grafana on `http://localhost:30000`.
3837+
3838+## Bugs and feature requests
3839+
3840+If you find a bug in our image or want to request a specific feature, please file a bug here:
3841+
3842+[https://bugs.launchpad.net/ubuntu-docker-images/+filebug](https://bugs.launchpad.net/ubuntu-docker-images/+filebug)
3843+
3844+Please title the bug "`grafana: <issue summary>`". Make sure to include the digest of the image you are using, from:
3845+
3846+```sh
3847+docker images --no-trunc --quiet public.ecr.aws/ubuntu/grafana:<tag>
3848+```
3849+
3850+
3851diff --git a/docs/public.ecr.aws/ubuntu/memcached.md b/docs/public.ecr.aws/ubuntu/memcached.md
3852new file mode 100644
3853index 0000000..f0b6dad
3854--- /dev/null
3855+++ b/docs/public.ecr.aws/ubuntu/memcached.md
3856@@ -0,0 +1,126 @@
3857+# Memcached | Ubuntu
3858+
3859+Current Memcached Docker Image [from Canonical](https://ubuntu.com/security/docker-images), based on Ubuntu. Receives security updates and rolls to newer Memcached or Ubuntu release.
3860+For [long-term support (LTS)](https://ubuntu.com/security/docker-images) versions of this image, see [public.ecr.aws/lts/memcached](https://gallery.ecr.aws/lts/memcached).
3861+
3862+## About Memcached
3863+
3864+Memcached is an in-memory key-value store for small chunks of arbitrary data (strings, objects) from results of database calls, API calls, or page rendering. It is a short-term memory for applications. Memcached allows to take memory from parts of a system where you have more than you need and make it accessible to areas where you have less than you need. Read more on the [memcached website](https://memcached.org/).
3865+
3866+
3867+## Tags and Architectures
3868+![LTS](https://assets.ubuntu.com/v1/0a5ff561-LTS%402x.png?h=17)
3869+Up to 5 years free security maintenance [from public.ecr.aws/lts/memcached](https://gallery.ecr.aws/lts/${repo}).
3870+
3871+![ESM](https://assets.ubuntu.com/v1/572f3fbd-ESM%402x.png?h=17)
3872+Up to 10 years customer security maintenance `from canonical/memcached`. [Request access](https://ubuntu.com/security/docker-images#get-in-touch).
3873+
3874+| Channel Tag | | | Currently | Architectures |
3875+|---|---|---|---|---|
3876+ | **`1.6-21.04_beta`** &nbsp;&nbsp; | [](https://gallery.ecr.aws/lts/memcached) | | Memcached 1.6 on Ubuntu&nbsp;21.04&nbsp;| `amd64`, `arm64`, `ppc64el`, `s390x` |
3877+| _`track_risk`_ |
3878+
3879+_The following tags are not available in public.ecr.aws/ubuntu/memcached but are shown here for completeness:_
3880+
3881+| Channel Tag | | | Currently | Architectures |
3882+|---|---|---|---|---|
3883+ | _**`1.5-20.04_beta`** &nbsp;&nbsp;_ | [![LTS](https://assets.ubuntu.com/v1/0a5ff561-LTS%402x.png?h=17)](https://gallery.ecr.aws/lts/memcached) | | Memcached 1.5.22 on Ubuntu&nbsp;20.04&nbsp;LTS| `amd64`, `arm64`, `ppc64el`, `s390x` |
3884+| _`track_risk`_ |
3885+
3886+
3887+Channel Tag shows the most stable channel for that track ordered `stable`, `candidate`, `beta`, `edge`. More risky channels are always implicitly available. So if `beta` is listed, you can also pull `edge`. If `candidate` is listed, you can pull `beta` and `edge`. When `stable` is listed, all four are available. Images are guaranteed to progress through the sequence `edge`, `beta`, `candidate` before `stable`.
3888+
3889+### Commercial use and Extended Security Maintenance channels
3890+If your usage includes commercial redistribution or requires unavailable channels/versions, please [get in touch with the Canonical team](https://ubuntu.com/security/docker-images#get-in-touch) (or using rocks@canonical.com).
3891+
3892+## Docker CLI
3893+
3894+Launch this image locally:
3895+
3896+```sh
3897+docker run -d --name memcached-container -e TZ=UTC public.ecr.aws/ubuntu/memcached:1.5-20.04_beta
3898+```
3899+
3900+#### Parameters
3901+
3902+| Parameter | Description |
3903+|---|---|
3904+| `-e TZ=UTC` | Timezone. |
3905+| `-e MEMCACHED_CACHE_SIZE=64MB` | Determines the size of the cache. |
3906+| `-e MEMCACHED_MAX_CONNECTIONS=1024` | Determines the maximum number of concurrent connections. |
3907+| `-e MEMCACHED_THREADS=4` | Determines the number of threads to process requests. |
3908+| `-e MEMCACHED_PASSWORD` | Define the password for the `root` user if another username is provided. By default the authentication is disabled but if this option is passed it becomes enabled. |
3909+| `-e MEMCACHED_USERNAME` | Define a new user. If this option is passed a password is needed to authenticate the new user. |
3910+| `-p 11211` | Memcached is exposed inside the container on port `11211`. |
3911+
3912+
3913+#### Testing/Debugging
3914+
3915+To debug the container:
3916+
3917+```sh
3918+docker logs -f memcached-container
3919+```
3920+
3921+To get an interactive shell:
3922+
3923+```sh
3924+docker exec -it memcached-container /bin/bash
3925+```
3926+
3927+<details>
3928+<summary>You can access the Memcached instance with telnet from another container (click to expand).</summary>
3929+
3930+```sh
3931+# Create a dedicated network
3932+$ docker network create memcached-network
3933+# Connect the main container to it
3934+$ docker network connect memcached-network memcached-container
3935+# Run an interactive container with the latest Ubuntu
3936+$ docker run -it --rm --name telnet --network memcached-network ubuntu bash
3937+# Install the telnet cli from within the container
3938+> apt update && apt install telnet -y
3939+# Connect to the memcached instance using telnet
3940+> telnet memcached-container 11211
3941+Trying 172.30.0.2...
3942+Connected to memcached.
3943+Escape character is '^]'.
3944+```
3945+From there you can run `memcached` commands, as documented in [their wiki](https://github.com/memcached/memcached/wiki/Commands).
3946+
3947+</details>
3948+
3949+```sh
3950+$ telnet memcached-container 11211
3951+```
3952+
3953+There are cases where one might want to pass some memcached command line flags that are not configurable via environment variables.
3954+In this case you can append the flags themselves or a shell script to the run command.
3955+
3956+
3957+## Deploy with Kubernetes
3958+
3959+Works with any Kubernetes; if you don't have one, we recommend you [install MicroK8s](https://microk8s.io/) and `microk8s.enable dns storage` then `snap alias microk8s.kubectl kubectl`.
3960+
3961+Download
3962+[memcached-deployment.yml](https://git.launchpad.net/~canonical-server/ubuntu-docker-images/+git/memcached/plain/examples/memcached-deployment.yml) and set `containers.memcached.image` in `memcached-deployment.yml` to your chosen channel tag (e.g. `public.ecr.aws/ubuntu/memcached:1.5-20.04_beta`), then:
3963+
3964+```sh
3965+kubectl apply -f memcached-deployment.yml
3966+```
3967+
3968+Memcached will be listening on port `31211` in your host.
3969+
3970+## Bugs and feature requests
3971+
3972+If you find a bug in our image or want to request a specific feature, please file a bug here:
3973+
3974+[https://bugs.launchpad.net/ubuntu-docker-images/+filebug](https://bugs.launchpad.net/ubuntu-docker-images/+filebug)
3975+
3976+Please title the bug "`memcached: <issue summary>`". Make sure to include the digest of the image you are using, from:
3977+
3978+```sh
3979+docker images --no-trunc --quiet public.ecr.aws/ubuntu/memcached:<tag>
3980+```
3981+
3982+
3983diff --git a/docs/public.ecr.aws/ubuntu/mysql.md b/docs/public.ecr.aws/ubuntu/mysql.md
3984new file mode 100644
3985index 0000000..af55f37
3986--- /dev/null
3987+++ b/docs/public.ecr.aws/ubuntu/mysql.md
3988@@ -0,0 +1,123 @@
3989+# MySQL™ | Ubuntu
3990+
3991+Current MySQL™ Docker Image [from Canonical](https://ubuntu.com/security/docker-images), based on Ubuntu. Receives security updates and rolls to newer MySQL™ or Ubuntu release.
3992+For [long-term support (LTS)](https://ubuntu.com/security/docker-images) versions of this image, see [public.ecr.aws/lts/mysql](https://gallery.ecr.aws/lts/mysql).
3993+
3994+## About MySQL™
3995+
3996+MySQL is a fast, stable and true multi-user, multi-threaded SQL database server. SQL (Structured Query Language) is the most popular database query language in the world. The main goals of MySQL are speed, robustness and ease of use. Read more on the [MySQL website](https://dev.mysql.com/doc/refman/8.0/en/).
3997+
3998+
3999+## Tags and Architectures
4000+![LTS](https://assets.ubuntu.com/v1/0a5ff561-LTS%402x.png?h=17)
4001+Up to 5 years free security maintenance [from public.ecr.aws/lts/mysql](https://gallery.ecr.aws/lts/${repo}).
4002+
4003+![ESM](https://assets.ubuntu.com/v1/572f3fbd-ESM%402x.png?h=17)
4004+Up to 10 years customer security maintenance `from canonical/mysql`. [Request access](https://ubuntu.com/security/docker-images#get-in-touch).
4005+
4006+| Channel Tag | | | Currently | Architectures |
4007+|---|---|---|---|---|
4008+ | **`8.0-21.04_beta`** &nbsp;&nbsp; | [](https://gallery.ecr.aws/lts/mysql) | | MySQL™ 8.0 on Ubuntu&nbsp;21.04&nbsp;| `amd64`, `arm64`, `s390x` |
4009+| _`track_risk`_ |
4010+
4011+_The following tags are not available in public.ecr.aws/ubuntu/mysql but are shown here for completeness:_
4012+
4013+| Channel Tag | | | Currently | Architectures |
4014+|---|---|---|---|---|
4015+ | _**`8.0-20.04_beta`** &nbsp;&nbsp;_ | [![LTS](https://assets.ubuntu.com/v1/0a5ff561-LTS%402x.png?h=17)](https://gallery.ecr.aws/lts/mysql) | | MySQL™ 8.0.22 on Ubuntu&nbsp;20.04&nbsp;LTS| `amd64`, `arm64`, `s390x` |
4016+| _`track_risk`_ |
4017+
4018+
4019+Channel Tag shows the most stable channel for that track ordered `stable`, `candidate`, `beta`, `edge`. More risky channels are always implicitly available. So if `beta` is listed, you can also pull `edge`. If `candidate` is listed, you can pull `beta` and `edge`. When `stable` is listed, all four are available. Images are guaranteed to progress through the sequence `edge`, `beta`, `candidate` before `stable`.
4020+
4021+### Commercial use and Extended Security Maintenance channels
4022+If your usage includes commercial redistribution or requires unavailable channels/versions, please [get in touch with the Canonical team](https://ubuntu.com/security/docker-images#get-in-touch) (or using rocks@canonical.com).
4023+
4024+## Docker CLI
4025+
4026+Launch this image locally:
4027+
4028+```sh
4029+docker run -d --name mysql-container -e TZ=UTC -p 30306:3306 -e MYSQL_ROOT_PASSWORD=My:S3cr3t/ public.ecr.aws/ubuntu/mysql:8.0-20.04_beta
4030+```
4031+Access your MySQL server at `localhost:30306`.
4032+
4033+#### Parameters
4034+
4035+| Parameter | Description |
4036+|---|---|
4037+| `-e TZ=UTC` | Timezone. |
4038+| `-e MYSQL_ROOT_PASSWORD=secret_for_root` | Set the password for the `root` user. This option is **mandatory** and **must not be empty**. |
4039+| `-e MYSQL_PASSWORD=secret` | Set the password for the `MYSQL_USER` user. |
4040+| `-e MYSQL_USER=john` | Create a new user with superuser privileges. This is used in conjunction with `MYSQL_PASSWORD`. |
4041+| `-e MYSQL_DATABASE=db_test` | Set the name of the default database. |
4042+| `-e MYSQL_ALLOW_EMPTY_PASSWORD=yes` | Set up a blank password for the `root` user. **This is not recommended to be used in production, make sure you know what you are doing**. |
4043+| `-e MYSQL_RANDOM_ROOT_PASSWORD=yes` | Generate a random initial password for the `root` user using `pwgen`. It will be printed in the logs, search for `GENERATED ROOT PASSWORD`. |
4044+| `-e MYSQL_ONETIME_PASSWORD=yes` | Set `root` user as experide once initialization is complete, forcing a password change on first login. |
4045+| `-e MYSQL_INITSB_SKIP_TZINFO=yes` | Timezone data is automatically loaded via entrypoint script, set this variable to any non-empty value to disable it. |
4046+| `-p 30306:3306` | Expose MySQL server on `localhost:30306`. |
4047+| `-v /path/to/data:/var/lib/mysql` | Persist data instead of initializing a new database every time you launch a new container. |
4048+| `-v /path/to/config/files/:/etc/mysql/mysql.conf.d/` | Local [configuration files](https://dev.mysql.com/doc/refman/8.0/en/mysql-command-options.html) (try this [example my.cnf](https://git.launchpad.net/~canonical-server/ubuntu-docker-images/+git/mysql/plain/examples/config/my.cnf)). |
4049+
4050+#### Initialization Scripts
4051+
4052+One can also add initialization scripts to their containers. This includes `*.sql`, `.sql.gz`, and `*.sh` scripts, and you just need to put them inside the `/docker-entrypoint-initdb.d` directory inside the container. After MySQL initialization is done and the default database and user are created, the scripts are executed in the following order:
4053+
4054+* Run any `*.sql` files in alphabetically order. By default the target database is specified via `MYSQL_DATABASE`.
4055+* Run any executable `*.sh` scripts in alphabetically order.
4056+* Source any non-executable `*.sh` scripts in alphabetically order.
4057+
4058+All of this is done before the MySQL service is started. Keep in mind if your database directory is not empty (contains pre-existing database) they will be left untouched.
4059+
4060+
4061+#### Testing/Debugging
4062+
4063+To debug the container:
4064+
4065+```sh
4066+docker logs -f mysql-container
4067+```
4068+
4069+To get an interactive shell:
4070+
4071+```sh
4072+docker exec -it mysql-container /bin/bash
4073+```
4074+
4075+This image also includes the `mysql` client for interactive container use:
4076+
4077+```sh
4078+$ docker network create mysql-network
4079+$ docker network connect mysql-network mysql-container
4080+$ docker run -it --rm --network mysql-network public.ecr.aws/ubuntu/mysql:8.0-20.04_beta mysql -hmysql-container -uroot -p
4081+```
4082+The password will be asked and you can enter `My:S3cr3t/`. Now, you are logged in and can enjoy your new instance.
4083+
4084+## Deploy with Kubernetes
4085+
4086+Works with any Kubernetes; if you don't have one, we recommend you [install MicroK8s](https://microk8s.io/) and `microk8s.enable dns storage` then `snap alias microk8s.kubectl kubectl`.
4087+
4088+Download
4089+[my-custom.cnf](https://git.launchpad.net/~canonical-server/ubuntu-docker-images/+git/mysql/plain/examples/config/my-custom.cnf) and
4090+[mysql-deployment.yml](https://git.launchpad.net/~canonical-server/ubuntu-docker-images/+git/mysql/plain/examples/mysql-deployment.yml) and set `containers.mysql.image` in `mysql-deployment.yml` to your chosen channel tag (e.g. `public.ecr.aws/ubuntu/mysql:8.0-20.04_beta`), then:
4091+
4092+```sh
4093+kubectl create configmap mysql-config --from-file=main-config=my-custom.cnf
4094+kubectl apply -f mysql-deployment.yml
4095+```
4096+
4097+You will now be able to connect to the MySQL server on `localhost:30306`.
4098+
4099+## Bugs and feature requests
4100+
4101+If you find a bug in our image or want to request a specific feature, please file a bug here:
4102+
4103+[https://bugs.launchpad.net/ubuntu-docker-images/+filebug](https://bugs.launchpad.net/ubuntu-docker-images/+filebug)
4104+
4105+Please title the bug "`mysql: <issue summary>`". Make sure to include the digest of the image you are using, from:
4106+
4107+```sh
4108+docker images --no-trunc --quiet public.ecr.aws/ubuntu/mysql:<tag>
4109+```
4110+
4111+
4112diff --git a/docs/public.ecr.aws/ubuntu/nginx.md b/docs/public.ecr.aws/ubuntu/nginx.md
4113new file mode 100644
4114index 0000000..16682e1
4115--- /dev/null
4116+++ b/docs/public.ecr.aws/ubuntu/nginx.md
4117@@ -0,0 +1,98 @@
4118+# Nginx | Ubuntu
4119+
4120+Current Nginx Docker Image [from Canonical](https://ubuntu.com/security/docker-images), based on Ubuntu. Receives security updates and rolls to newer Nginx or Ubuntu release.
4121+For [long-term support (LTS)](https://ubuntu.com/security/docker-images) versions of this image, see [public.ecr.aws/lts/nginx](https://gallery.ecr.aws/lts/nginx).
4122+
4123+## About Nginx
4124+
4125+Nginx ("engine X") is a high-performance web and reverse proxy server created by Igor Sysoev. It can be used both as a standalone web server and as a proxy to reduce the load on back-end HTTP or mail servers. Read more on the [nginx website](https://www.nginx.com/).
4126+
4127+
4128+## Tags and Architectures
4129+![LTS](https://assets.ubuntu.com/v1/0a5ff561-LTS%402x.png?h=17)
4130+Up to 5 years free security maintenance [from public.ecr.aws/lts/nginx](https://gallery.ecr.aws/lts/${repo}).
4131+
4132+![ESM](https://assets.ubuntu.com/v1/572f3fbd-ESM%402x.png?h=17)
4133+Up to 10 years customer security maintenance `from canonical/nginx`. [Request access](https://ubuntu.com/security/docker-images#get-in-touch).
4134+
4135+| Channel Tag | | | Currently | Architectures |
4136+|---|---|---|---|---|
4137+ | **`1.18-21.04_beta`** &nbsp;&nbsp; | [](https://gallery.ecr.aws/lts/nginx) | | Nginx 1.18 on Ubuntu&nbsp;21.04&nbsp;| `amd64`, `arm64`, `ppc64el`, `s390x` |
4138+| _`track_risk`_ |
4139+
4140+_The following tags are not available in public.ecr.aws/ubuntu/nginx but are shown here for completeness:_
4141+
4142+| Channel Tag | | | Currently | Architectures |
4143+|---|---|---|---|---|
4144+ | _**`1.18-20.04_beta`** &nbsp;&nbsp;_ | [![LTS](https://assets.ubuntu.com/v1/0a5ff561-LTS%402x.png?h=17)](https://gallery.ecr.aws/lts/nginx) | | Nginx 1.18.0 on Ubuntu&nbsp;20.04&nbsp;LTS| `amd64`, `arm64`, `ppc64el`, `s390x` |
4145+| _`track_risk`_ |
4146+
4147+
4148+Channel Tag shows the most stable channel for that track ordered `stable`, `candidate`, `beta`, `edge`. More risky channels are always implicitly available. So if `beta` is listed, you can also pull `edge`. If `candidate` is listed, you can pull `beta` and `edge`. When `stable` is listed, all four are available. Images are guaranteed to progress through the sequence `edge`, `beta`, `candidate` before `stable`.
4149+
4150+### Commercial use and Extended Security Maintenance channels
4151+If your usage includes commercial redistribution or requires unavailable channels/versions, please [get in touch with the Canonical team](https://ubuntu.com/security/docker-images#get-in-touch) (or using rocks@canonical.com).
4152+
4153+## Docker CLI
4154+
4155+Launch this image locally:
4156+
4157+```sh
4158+docker run -d --name nginx-container -e TZ=UTC -p 8080:80 public.ecr.aws/ubuntu/nginx:1.18-20.04_beta
4159+```
4160+Access your Nginx server at `http://localhost:8080`.
4161+
4162+#### Parameters
4163+
4164+| Parameter | Description |
4165+|---|---|
4166+| `-e TZ=UTC` | Timezone. |
4167+| `-p 8080:80` | Expose Nginx on `localhost:8080`. |
4168+| `-v /local/path/to/website:/var/www/html` | Mount and serve a local website. |
4169+| `-v /path/to/conf.template:/etc/nginx/templates/conf.template` | Mount template files inside `/etc/nginx/templates`. They will be processed and the results will be placed at `/etc/nginx/conf.d`. (e.g. `listen ${NGINX_PORT};` will generate `listen 80;`). |
4170+| `-v /path/to/nginx.conf:/etc/nginx/nginx.conf` | Local [configuration file](https://nginx.org/en/docs/) `nginx.conf` (try [this example](https://git.launchpad.net/~canonical-server/ubuntu-docker-images/+git/nginx/plain/examples/config/nginx.conf)). |
4171+
4172+
4173+#### Testing/Debugging
4174+
4175+To debug the container:
4176+
4177+```sh
4178+docker logs -f nginx-container
4179+```
4180+
4181+To get an interactive shell:
4182+
4183+```sh
4184+docker exec -it nginx-container /bin/bash
4185+```
4186+
4187+
4188+## Deploy with Kubernetes
4189+
4190+Works with any Kubernetes; if you don't have one, we recommend you [install MicroK8s](https://microk8s.io/) and `microk8s.enable dns storage` then `snap alias microk8s.kubectl kubectl`.
4191+
4192+Download
4193+[nginx.conf](https://git.launchpad.net/~canonical-server/ubuntu-docker-images/+git/nginx/plain/examples/config/nginx.conf), [index.html](https://git.launchpad.net/~canonical-server/ubuntu-docker-images/+git/nginx/plain/examples/config/html/index.html) and
4194+[nginx-deployment.yml](https://git.launchpad.net/~canonical-server/ubuntu-docker-images/+git/nginx/plain/examples/nginx-deployment.yml) and set `containers.nginx.image` in `nginx-deployment.yml` to your chosen channel tag (e.g. `public.ecr.aws/ubuntu/nginx:1.18-20.04_beta`), then:
4195+
4196+```sh
4197+kubectl create configmap nginx-config --from-file=nginx=nginx.conf --from-file=nginx-site=index.html
4198+kubectl apply -f nginx-deployment.yml
4199+```
4200+
4201+You will now be able to connect to the nginx server on `http://localhost:31080`.
4202+
4203+## Bugs and feature requests
4204+
4205+If you find a bug in our image or want to request a specific feature, please file a bug here:
4206+
4207+[https://bugs.launchpad.net/ubuntu-docker-images/+filebug](https://bugs.launchpad.net/ubuntu-docker-images/+filebug)
4208+
4209+Please title the bug "`nginx: <issue summary>`". Make sure to include the digest of the image you are using, from:
4210+
4211+```sh
4212+docker images --no-trunc --quiet public.ecr.aws/ubuntu/nginx:<tag>
4213+```
4214+
4215+
4216diff --git a/docs/public.ecr.aws/ubuntu/postgres.md b/docs/public.ecr.aws/ubuntu/postgres.md
4217new file mode 100644
4218index 0000000..bea237a
4219--- /dev/null
4220+++ b/docs/public.ecr.aws/ubuntu/postgres.md
4221@@ -0,0 +1,122 @@
4222+# Postgres | Ubuntu
4223+
4224+Current Postgres Docker Image [from Canonical](https://ubuntu.com/security/docker-images), based on Ubuntu. Receives security updates and rolls to newer Postgres or Ubuntu release.
4225+For [long-term support (LTS)](https://ubuntu.com/security/docker-images) versions of this image, see [public.ecr.aws/lts/postgres](https://gallery.ecr.aws/lts/postgres).
4226+
4227+## About Postgres
4228+
4229+PostgreSQL is a powerful, open source object-relational database system. It is fully ACID compliant, has full support for foreign keys, joins, views, triggers, and stored procedures (in multiple languages). It includes most SQL:2008 data types, including INTEGER, NUMERIC, BOOLEAN, CHAR, VARCHAR, DATE, INTERVAL, and TIMESTAMP. It also supports storage of binary large objects, including pictures, sounds, or video. It has native programming interfaces for C/C++, Java, .Net, Perl, Python, Ruby, Tcl, ODBC, among others, and exceptional documentation. Read more on the [PostgreSQL website](https://www.postgresql.org/docs/).
4230+
4231+
4232+## Tags and Architectures
4233+![LTS](https://assets.ubuntu.com/v1/0a5ff561-LTS%402x.png?h=17)
4234+Up to 5 years free security maintenance [from public.ecr.aws/lts/postgres](https://gallery.ecr.aws/lts/${repo}).
4235+
4236+![ESM](https://assets.ubuntu.com/v1/572f3fbd-ESM%402x.png?h=17)
4237+Up to 10 years customer security maintenance `from canonical/postgres`. [Request access](https://ubuntu.com/security/docker-images#get-in-touch).
4238+
4239+| Channel Tag | | | Currently | Architectures |
4240+|---|---|---|---|---|
4241+ | **`13.1-21.04_beta`** &nbsp;&nbsp; | [](https://gallery.ecr.aws/lts/postgres) | | Postgres 13.1 on Ubuntu&nbsp;21.04&nbsp;| `amd64`, `arm64`, `s390x` |
4242+| _`track_risk`_ |
4243+
4244+_The following tags are not available in public.ecr.aws/ubuntu/postgres but are shown here for completeness:_
4245+
4246+| Channel Tag | | | Currently | Architectures |
4247+|---|---|---|---|---|
4248+ | _**`12.4-20.04_beta`** &nbsp;&nbsp;_ | [![LTS](https://assets.ubuntu.com/v1/0a5ff561-LTS%402x.png?h=17)](https://gallery.ecr.aws/lts/postgres) | | Postgres 12.4 on Ubuntu&nbsp;20.04&nbsp;LTS| `amd64`, `arm64`, `s390x` |
4249+| _`track_risk`_ |
4250+
4251+
4252+Channel Tag shows the most stable channel for that track ordered `stable`, `candidate`, `beta`, `edge`. More risky channels are always implicitly available. So if `beta` is listed, you can also pull `edge`. If `candidate` is listed, you can pull `beta` and `edge`. When `stable` is listed, all four are available. Images are guaranteed to progress through the sequence `edge`, `beta`, `candidate` before `stable`.
4253+
4254+### Commercial use and Extended Security Maintenance channels
4255+If your usage includes commercial redistribution or requires unavailable channels/versions, please [get in touch with the Canonical team](https://ubuntu.com/security/docker-images#get-in-touch) (or using rocks@canonical.com).
4256+
4257+## Docker CLI
4258+
4259+Launch this image locally:
4260+
4261+```sh
4262+docker run -d --name postgres-container -e TZ=UTC -p 30432:5432 -e POSTGRES_PASSWORD=My:s3Cr3t/ public.ecr.aws/ubuntu/postgres:12.4-20.04_beta
4263+```
4264+Access your PostgreSQL server at `localhost:30432`.
4265+
4266+#### Parameters
4267+
4268+| Parameter | Description |
4269+|---|---|
4270+| `-e TZ=UTC` | Timezone. |
4271+| `-e POSTGRES_PASSWORD=secret` | Set the password for the superuser which is `postgres` by default. Bear in mind that to connect to the database in the same host the password is not needed but to access it via an external host (for instance another container) the password is needed. This option is **mandatory** and **must not be empty**. |
4272+| `-e POSTGRES_USER=john` | Create a new user with superuser privileges. This is used in conjunction with `POSTGRES_PASSWORD`. |
4273+| `-e POSTGRES_DB=db_test` | Set the name of the default database. |
4274+| `-e POSTGRES_INITDB_ARGS="--data-checksums"` | Pass arguments to the `postgres initdb` call. |
4275+| `-e POSTGRES_INITDB_WALDIR=/path/to/location` | Set the location of the Postgres transaction log. By default it is stored in a subdirectory of the main Postgres data folder (`PGDATA`). |
4276+| `-e POSTGRES_HOST_AUTH_METHOD=trust` | Set the `auth-method` for `host` connections for `all` databases, `all` users, and `all` addresses. The following will be added to the `pg_hba.conf` if this option is passed: `host all all all $POSTGRES_HOST_AUTH_METHOD`. |
4277+| `-e PGDATA=/path/to/location` | Set the location of the database files. The default is `/var/lib/postgresql/data`. |
4278+| `-p 30432:5432` | Expose Postgres on `localhost:30432`. |
4279+| `-v /path/to/postgresql.conf:/etc/postgresql/postgresql.conf` | Local [configuration file](https://www.postgresql.org/docs/12/index.html) `postgresql.conf` (try [this example](https://git.launchpad.net/~canonical-server/ubuntu-docker-images/+git/postgresql/plain/examples/config/postgresql.conf)). |
4280+| `-v /path/to/persisted/data:/var/lib/postgresql/data` | Persist data instead of initializing a new database every time you launch a new container. |
4281+
4282+#### Initialization Scripts
4283+
4284+One can also add initialization scripts to their containers. This includes `*.sql`, `.sql.gz`, and `*.sh` scripts, and you just need to put them inside the `/docker-entrypoint-initdb.d` directory inside the container. After Postgres initialization is done and the default database and user are created, the scripts are executed in the following order:
4285+
4286+* Run any `*.sql` files in alphabetically order. It will be executed with `POSTGRES_USER`.
4287+* Run any executable `*.sh` scripts in alphabetically order.
4288+* Source any non-executable `*.sh` scripts in alphabetically order.
4289+
4290+All of this is done before the Postgres service is started. Keep in mind if your `PGDATA` directory is not empty (contains pre-existing database) they will be left untouched.
4291+
4292+
4293+#### Testing/Debugging
4294+
4295+To debug the container:
4296+
4297+```sh
4298+docker logs -f postgres-container
4299+```
4300+
4301+To get an interactive shell:
4302+
4303+```sh
4304+docker exec -it postgres-container /bin/bash
4305+```
4306+
4307+This image also includes the `psql` client for interactive container use:
4308+
4309+```sh
4310+$ docker network create postgres-network
4311+$ docker network connect postgres-network postgres-container
4312+$ docker run -it --rm --network postgres-network public.ecr.aws/ubuntu/postgres:12.4-20.04_beta psql -h postgres-container -U postgres
4313+```
4314+The password will be asked and you can enter `My:s3Cr3t/`. Now, you are logged in and can enjoy your new instance.
4315+
4316+## Deploy with Kubernetes
4317+
4318+Works with any Kubernetes; if you don't have one, we recommend you [install MicroK8s](https://microk8s.io/) and `microk8s.enable dns storage` then `snap alias microk8s.kubectl kubectl`.
4319+
4320+Download
4321+[postgresql.conf](https://git.launchpad.net/~canonical-server/ubuntu-docker-images/+git/postgresql/plain/examples/config/postgresql.conf) and
4322+[postgres-deployment.yml](https://git.launchpad.net/~canonical-server/ubuntu-docker-images/+git/postgresql/plain/examples/postgres-deployment.yml) and set `containers.postgres.image` in `postgres-deployment.yml` to your chosen channel tag (e.g. `public.ecr.aws/ubuntu/postgres:12.4-20.04_beta`), then:
4323+
4324+```sh
4325+kubectl create configmap postgres-config --from-file=main-config=postgresql.conf
4326+kubectl apply -f postgres-deployment.yml
4327+```
4328+
4329+You will now be able to connect to the Postgres server on `localhost:30306`.
4330+
4331+## Bugs and feature requests
4332+
4333+If you find a bug in our image or want to request a specific feature, please file a bug here:
4334+
4335+[https://bugs.launchpad.net/ubuntu-docker-images/+filebug](https://bugs.launchpad.net/ubuntu-docker-images/+filebug)
4336+
4337+Please title the bug "`postgres: <issue summary>`". Make sure to include the digest of the image you are using, from:
4338+
4339+```sh
4340+docker images --no-trunc --quiet public.ecr.aws/ubuntu/postgres:<tag>
4341+```
4342+
4343+
4344diff --git a/docs/public.ecr.aws/ubuntu/prometheus-alertmanager.md b/docs/public.ecr.aws/ubuntu/prometheus-alertmanager.md
4345new file mode 100644
4346index 0000000..676d417
4347--- /dev/null
4348+++ b/docs/public.ecr.aws/ubuntu/prometheus-alertmanager.md
4349@@ -0,0 +1,90 @@
4350+# Prometheus Alertmanager | Ubuntu
4351+
4352+Current Prometheus Alertmanager Docker Image [from Canonical](https://ubuntu.com/security/docker-images), based on Ubuntu. Receives security updates and rolls to newer Prometheus Alertmanager or Ubuntu release.
4353+
4354+## About Prometheus Alertmanager
4355+
4356+The Alertmanager handles alerts sent by client applications such as the Prometheus server. It takes care of deduplicating, grouping, and routing them to the correct receiver integration such as email, PagerDuty, or OpsGenie. It also takes care of silencing and inhibition of alerts. Read more on the [Prometheus Alertmanager website](https://prometheus.io/docs/alerting/latest/alertmanager/).
4357+
4358+
4359+## Tags and Architectures
4360+![LTS](https://assets.ubuntu.com/v1/0a5ff561-LTS%402x.png?h=17)
4361+Up to 5 years free security maintenance. [Request access](https://ubuntu.com/security/docker-images#get-in-touch).
4362+
4363+![ESM](https://assets.ubuntu.com/v1/572f3fbd-ESM%402x.png?h=17)
4364+Up to 10 years customer security maintenance `from canonical/prometheus-alertmanager`. [Request access](https://ubuntu.com/security/docker-images#get-in-touch).
4365+
4366+| Channel Tag | | | Currently | Architectures |
4367+|---|---|---|---|---|
4368+ | **`0.21-21.04_beta`** &nbsp;&nbsp; | [](https://gallery.ecr.aws/lts/prometheus-alertmanager) | | Prometheus Alertmanager 0.21 on Ubuntu&nbsp;21.04&nbsp;| `amd64`, `arm64`, `ppc64el`, `s390x` |
4369+ | `0.21-20.04_beta` &nbsp;&nbsp; | [](https://gallery.ecr.aws/lts/prometheus-alertmanager) | | Prometheus Alertmanager 0.21.0 on Ubuntu&nbsp;20.04&nbsp;LTS| `amd64`, `arm64`, `ppc64el`, `s390x` |
4370+| _`track_risk`_ |
4371+
4372+
4373+Channel Tag shows the most stable channel for that track ordered `stable`, `candidate`, `beta`, `edge`. More risky channels are always implicitly available. So if `beta` is listed, you can also pull `edge`. If `candidate` is listed, you can pull `beta` and `edge`. When `stable` is listed, all four are available. Images are guaranteed to progress through the sequence `edge`, `beta`, `candidate` before `stable`.
4374+
4375+### Commercial use and Extended Security Maintenance channels
4376+If your usage includes commercial redistribution or requires unavailable channels/versions, please [get in touch with the Canonical team](https://ubuntu.com/security/docker-images#get-in-touch) (or using rocks@canonical.com). **This repository has no LTS channel yet, please get in touch if you need one.**
4377+
4378+## Docker CLI
4379+
4380+Launch this image locally:
4381+
4382+```sh
4383+docker run -d --name prometheus-alertmanager-container -e TZ=UTC -p 30093:9093 public.ecr.aws/ubuntu/prometheus-alertmanager:0.21-21.04_beta
4384+```
4385+Access your Prometheus Alertmanager server at `localhost:30093`.
4386+
4387+#### Parameters
4388+
4389+| Parameter | Description |
4390+|---|---|
4391+| `-e TZ=UTC` | Timezone. |
4392+| `-p 30093:9093` | Expose Prometheus Alertmanager on `localhost:30093`. |
4393+| `-v /path/to/alertmanager.yml:/etc/prometheus/alertmanager.yml` | Local [configuration file](https://www.prometheus.io/docs/alerting/latest/configuration/) `alertmanager.yml` (try [this example](https://git.launchpad.net/~canonical-server/ubuntu-docker-images/+git/prometheus-alertmanager/plain/oci/examples/config/alertmanager.yml)). |
4394+| `-v /path/to/persisted/data:/alertmanager` | Persist data instead of initializing a new database for each newly launched container. **Important note**: the directory you will be using to persist the data needs to belong to `nogroup:nobody`. You can run `chown nogroup:nobody <path_to_persist_data>` before launching your container. |
4395+
4396+
4397+#### Testing/Debugging
4398+
4399+To debug the container:
4400+
4401+```sh
4402+docker logs -f prometheus-alertmanager-container
4403+```
4404+
4405+To get an interactive shell:
4406+
4407+```sh
4408+docker exec -it prometheus-alertmanager-container /bin/bash
4409+```
4410+
4411+
4412+## Deploy with Kubernetes
4413+
4414+Works with any Kubernetes; if you don't have one, we recommend you [install MicroK8s](https://microk8s.io/) and `microk8s.enable dns storage` then `snap alias microk8s.kubectl kubectl`.
4415+
4416+Download
4417+[alertmanager.yml](https://git.launchpad.net/~canonical-server/ubuntu-docker-images/+git/prometheus-alertmanager/plain/oci/examples/config/alertmanager.yml) and
4418+[prometheus-alertmanager-deployment.yml](https://git.launchpad.net/~canonical-server/ubuntu-docker-images/+git/prometheus-alertmanager/plain/oci/examples/alertmanager-deployment.yml) and set `containers.prometheus-alertmanager.image` in `prometheus-alertmanager-deployment.yml` to your chosen channel tag (e.g. `public.ecr.aws/ubuntu/prometheus-alertmanager:0.21-21.04_beta`), then:
4419+
4420+```sh
4421+kubectl create configmap prometheus-alertmanager-config --from-file=alertmanager=alertmanager.yml
4422+kubectl apply -f prometheus-alertmanager-deployment.yml
4423+```
4424+
4425+You will now be able to connect to the Prometheus Alertmanager server on `localhost:30093`.
4426+
4427+## Bugs and feature requests
4428+
4429+If you find a bug in our image or want to request a specific feature, please file a bug here:
4430+
4431+[https://bugs.launchpad.net/ubuntu-docker-images/+filebug](https://bugs.launchpad.net/ubuntu-docker-images/+filebug)
4432+
4433+Please title the bug "`prometheus-alertmanager: <issue summary>`". Make sure to include the digest of the image you are using, from:
4434+
4435+```sh
4436+docker images --no-trunc --quiet public.ecr.aws/ubuntu/prometheus-alertmanager:<tag>
4437+```
4438+
4439+
4440diff --git a/docs/public.ecr.aws/ubuntu/prometheus.md b/docs/public.ecr.aws/ubuntu/prometheus.md
4441new file mode 100644
4442index 0000000..1ce4776
4443--- /dev/null
4444+++ b/docs/public.ecr.aws/ubuntu/prometheus.md
4445@@ -0,0 +1,90 @@
4446+# Prometheus | Ubuntu
4447+
4448+Current Prometheus Docker Image [from Canonical](https://ubuntu.com/security/docker-images), based on Ubuntu. Receives security updates and rolls to newer Prometheus or Ubuntu release.
4449+
4450+## About Prometheus
4451+
4452+Prometheus is a systems and service monitoring system. It collects metrics from configured targets at given intervals, evaluates rule expressions, displays the results, and can trigger alerts if some condition is observed to be true. Read more on the [Prometheus website](https://prometheus.io/).
4453+
4454+
4455+## Tags and Architectures
4456+![LTS](https://assets.ubuntu.com/v1/0a5ff561-LTS%402x.png?h=17)
4457+Up to 5 years free security maintenance. [Request access](https://ubuntu.com/security/docker-images#get-in-touch).
4458+
4459+![ESM](https://assets.ubuntu.com/v1/572f3fbd-ESM%402x.png?h=17)
4460+Up to 10 years customer security maintenance `from canonical/prometheus`. [Request access](https://ubuntu.com/security/docker-images#get-in-touch).
4461+
4462+| Channel Tag | | | Currently | Architectures |
4463+|---|---|---|---|---|
4464+ | **`2.25-21.04_beta`** &nbsp;&nbsp; | [](https://gallery.ecr.aws/lts/prometheus) | | Prometheus 2.25 on Ubuntu&nbsp;21.04&nbsp;| `amd64`, `arm64`, `ppc64el`, `s390x` |
4465+ | `2.20-20.04_beta` &nbsp;&nbsp; | [](https://gallery.ecr.aws/lts/prometheus) | | Prometheus 2.20.1 on Ubuntu&nbsp;20.04&nbsp;LTS| `amd64`, `arm64`, `ppc64el`, `s390x` |
4466+| _`track_risk`_ |
4467+
4468+
4469+Channel Tag shows the most stable channel for that track ordered `stable`, `candidate`, `beta`, `edge`. More risky channels are always implicitly available. So if `beta` is listed, you can also pull `edge`. If `candidate` is listed, you can pull `beta` and `edge`. When `stable` is listed, all four are available. Images are guaranteed to progress through the sequence `edge`, `beta`, `candidate` before `stable`.
4470+
4471+### Commercial use and Extended Security Maintenance channels
4472+If your usage includes commercial redistribution or requires unavailable channels/versions, please [get in touch with the Canonical team](https://ubuntu.com/security/docker-images#get-in-touch) (or using rocks@canonical.com). **This repository has no LTS channel yet, please get in touch if you need one.**
4473+
4474+## Docker CLI
4475+
4476+Launch this image locally:
4477+
4478+```sh
4479+docker run -d --name prometheus-container -e TZ=UTC -p 30090:9090 public.ecr.aws/ubuntu/prometheus:2.25-21.04_beta
4480+```
4481+Access your Prometheus server at `localhost:30090`.
4482+
4483+#### Parameters
4484+
4485+| Parameter | Description |
4486+|---|---|
4487+| `-e TZ=UTC` | Timezone. |
4488+| `-p 30090:9090` | Expose Prometheus server on `localhost:30090`. |
4489+| `-v /path/to/prometheus.yml:/etc/prometheus/prometheus.yml` | Local [configuration file](https://prometheus.io/docs/prometheus/2.20/configuration/configuration/) `prometheus.yml` (try [this example](https://git.launchpad.net/~canonical-server/ubuntu-docker-images/+git/prometheus/plain/oci/examples/config/prometheus.yml)). |
4490+| `-v /path/to/alerts.yml:/etc/prometheus/alerts.yml` | Local [alert configuration file](https://prometheus.io/docs/prometheus/2.20/configuration/configuration/) `alerts.yml` (try [this example](https://git.launchpad.net/~canonical-server/ubuntu-docker-images/+git/prometheus/plain/oci/examples/config/alerts.yml)). |
4491+
4492+
4493+#### Testing/Debugging
4494+
4495+To debug the container:
4496+
4497+```sh
4498+docker logs -f prometheus-container
4499+```
4500+
4501+To get an interactive shell:
4502+
4503+```sh
4504+docker exec -it prometheus-container /bin/bash
4505+```
4506+
4507+
4508+## Deploy with Kubernetes
4509+
4510+Works with any Kubernetes; if you don't have one, we recommend you [install MicroK8s](https://microk8s.io/) and `microk8s.enable dns storage` then `snap alias microk8s.kubectl kubectl`.
4511+
4512+Download
4513+[prometheus.yml](https://git.launchpad.net/~canonical-server/ubuntu-docker-images/+git/prometheus/plain/oci/examples/config/prometheus.yml), [alerts.yml](https://git.launchpad.net/~canonical-server/ubuntu-docker-images/+git/prometheus/plain/oci/examples/config/alerts.yml) and
4514+[prometheus-deployment.yml](https://git.launchpad.net/~canonical-server/ubuntu-docker-images/+git/prometheus/plain/oci/examples/prometheus-deployment.yml) and set `containers.prometheus.image` in `prometheus-deployment.yml` to your chosen channel tag (e.g. `public.ecr.aws/ubuntu/prometheus:2.25-21.04_beta`), then:
4515+
4516+```sh
4517+kubectl create configmap prometheus-config --from-file=prometheus=prometheus.yml --from-file=prometheus-alerts=alerts.yml
4518+kubectl apply -f prometheus-deployment.yml
4519+```
4520+
4521+You will now be able to connect to the Prometheus on `http://localhost:30090`.
4522+
4523+## Bugs and feature requests
4524+
4525+If you find a bug in our image or want to request a specific feature, please file a bug here:
4526+
4527+[https://bugs.launchpad.net/ubuntu-docker-images/+filebug](https://bugs.launchpad.net/ubuntu-docker-images/+filebug)
4528+
4529+Please title the bug "`prometheus: <issue summary>`". Make sure to include the digest of the image you are using, from:
4530+
4531+```sh
4532+docker images --no-trunc --quiet public.ecr.aws/ubuntu/prometheus:<tag>
4533+```
4534+
4535+
4536diff --git a/docs/public.ecr.aws/ubuntu/redis.md b/docs/public.ecr.aws/ubuntu/redis.md
4537new file mode 100644
4538index 0000000..9f0e902
4539--- /dev/null
4540+++ b/docs/public.ecr.aws/ubuntu/redis.md
4541@@ -0,0 +1,110 @@
4542+# Redis™ software | Ubuntu
4543+
4544+Current Redis™ software Docker Image [from Canonical](https://ubuntu.com/security/docker-images), based on Ubuntu. Receives security updates and rolls to newer Redis™ software or Ubuntu release.
4545+
4546+## About Redis™ software
4547+
4548+Redis is an open source (BSD licensed), in-memory data structure store, used as a database, cache and message broker. It supports data structures such as strings, hashes, lists, sets, sorted sets with range queries, bitmaps, hyperloglogs, geospatial indexes with radius queries and streams. Redis has built-in replication, Lua scripting, LRU eviction, transactions and different levels of on-disk persistence, and provides high availability via Redis Sentinel and automatic partitioning with Redis Cluster. Read more on the [Redis website](https://redis.io/topics/introduction).
4549+
4550+
4551+## Tags and Architectures
4552+![LTS](https://assets.ubuntu.com/v1/0a5ff561-LTS%402x.png?h=17)
4553+Up to 5 years free security maintenance. [Request access](https://ubuntu.com/security/docker-images#get-in-touch).
4554+
4555+![ESM](https://assets.ubuntu.com/v1/572f3fbd-ESM%402x.png?h=17)
4556+Up to 10 years customer security maintenance `from canonical/redis`. [Request access](https://ubuntu.com/security/docker-images#get-in-touch).
4557+
4558+| Channel Tag | | | Currently | Architectures |
4559+|---|---|---|---|---|
4560+ | **`6.0-21.04_beta`** &nbsp;&nbsp; | [](https://gallery.ecr.aws/lts/redis) | | Redis™ software 6.0 on Ubuntu&nbsp;21.04&nbsp;| `amd64`, `arm64`, `ppc64el`, `s390x` |
4561+ | `5.0-20.04_beta` &nbsp;&nbsp; | [](https://gallery.ecr.aws/lts/redis) | | Redis™ software 5.0.7 on Ubuntu&nbsp;20.04&nbsp;LTS| `amd64`, `arm64`, `ppc64el`, `s390x` |
4562+| _`track_risk`_ |
4563+
4564+
4565+Channel Tag shows the most stable channel for that track ordered `stable`, `candidate`, `beta`, `edge`. More risky channels are always implicitly available. So if `beta` is listed, you can also pull `edge`. If `candidate` is listed, you can pull `beta` and `edge`. When `stable` is listed, all four are available. Images are guaranteed to progress through the sequence `edge`, `beta`, `candidate` before `stable`.
4566+
4567+### Commercial use and Extended Security Maintenance channels
4568+If your usage includes commercial redistribution or requires unavailable channels/versions, please [get in touch with the Canonical team](https://ubuntu.com/security/docker-images#get-in-touch) (or using rocks@canonical.com). **This repository has no LTS channel yet, please get in touch if you need one.**
4569+
4570+## Docker CLI
4571+
4572+Launch this image locally:
4573+
4574+```sh
4575+docker run -d --name redis-container -e TZ=UTC -p 30073:6379 -e REDIS_PASSWORD=mypassword public.ecr.aws/ubuntu/redis:6.0-21.04_beta
4576+```
4577+Access your Redis server at `localhost:30073`.
4578+
4579+#### Parameters
4580+
4581+| Parameter | Description |
4582+|---|---|
4583+| `-e TZ=UTC` | Timezone. |
4584+| `-e ALLOW_EMPTY_PASSWORD` | Set to `yes` to allow connections to `redis-server` without a password. **This setting is not recommended in production environments**. |
4585+| `-e REDIS_PASSWORD` | Set the desired password to be used. |
4586+| `-e REDIS_RANDOM_PASSWORD` | Set this variable to `1` if you would like the entrypoint script to generate a random password for you. You will be able to see the generated password in the logs (`docker logs`). |
4587+| `-e REDIS_ALLOW_REMOTE_CONNECTIONS=yes` | Set to `no` to disallow remote connections to `redis-server` (i.e., make `redis-server` listen to `127.0.0.1` only). |
4588+| `-e REDIS_EXTRA_FLAGS` | Specify extra flags to be passed to `redis-server` when initializing it. |
4589+| `-p 30073:6379` | Expose redis on `localhost:30073`. |
4590+| `-v /path/to/redis.conf:/etc/redis/redis.conf` | Local [configuration file](https://redis.io/topics/config) `redis.conf` (try [this example](https://git.launchpad.net/~canonical-server/ubuntu-docker-images/+git/redis/plain/examples/config/redis.conf)). |
4591+
4592+
4593+#### Testing/Debugging
4594+
4595+To debug the container:
4596+
4597+```sh
4598+docker logs -f redis-container
4599+```
4600+
4601+To get an interactive shell:
4602+
4603+```sh
4604+docker exec -it redis-container /bin/bash
4605+```
4606+
4607+This image also includes the `redis-cli` client for interactive container use:
4608+
4609+```sh
4610+$ docker network create redis-network
4611+$ docker network connect redis-network redis-container
4612+$ docker run -it --rm --network redis-network public.ecr.aws/ubuntu/redis:6.0-21.04_beta redis-cli -h redis-container
4613+```
4614+Now you can:
4615+```
4616+redis:6379> AUTH mypassword
4617+OK
4618+redis:6379> PING
4619+PONG
4620+redis:6379>
4621+
4622+```
4623+
4624+## Deploy with Kubernetes
4625+
4626+Works with any Kubernetes; if you don't have one, we recommend you [install MicroK8s](https://microk8s.io/) and `microk8s.enable dns storage` then `snap alias microk8s.kubectl kubectl`.
4627+
4628+Download
4629+[redis.conf](https://git.launchpad.net/~canonical-server/ubuntu-docker-images/+git/redis/plain/examples/config/redis.conf) and
4630+[redis-deployment.yml](https://git.launchpad.net/~canonical-server/ubuntu-docker-images/+git/redis/plain/examples/redis-deployment.yml) and set `containers.redis.image` in `redis-deployment.yml` to your chosen channel tag (e.g. `public.ecr.aws/ubuntu/redis:6.0-21.04_beta`), then:
4631+
4632+```sh
4633+kubectl create configmap redis-config --from-file=redis=redis.conf
4634+kubectl apply -f redis-deployment.yml
4635+```
4636+
4637+You will now be able to connect to the Redis server on `localhost:30073`.
4638+
4639+## Bugs and feature requests
4640+
4641+If you find a bug in our image or want to request a specific feature, please file a bug here:
4642+
4643+[https://bugs.launchpad.net/ubuntu-docker-images/+filebug](https://bugs.launchpad.net/ubuntu-docker-images/+filebug)
4644+
4645+Please title the bug "`redis: <issue summary>`". Make sure to include the digest of the image you are using, from:
4646+
4647+```sh
4648+docker images --no-trunc --quiet public.ecr.aws/ubuntu/redis:<tag>
4649+```
4650+
4651+
4652diff --git a/docs/public.ecr.aws/ubuntu/squid.md b/docs/public.ecr.aws/ubuntu/squid.md
4653new file mode 100644
4654index 0000000..6add789
4655--- /dev/null
4656+++ b/docs/public.ecr.aws/ubuntu/squid.md
4657@@ -0,0 +1,98 @@
4658+# Squid | Ubuntu
4659+
4660+Current Squid Docker Image [from Canonical](https://ubuntu.com/security/docker-images), based on Ubuntu. Receives security updates and rolls to newer Squid or Ubuntu release.
4661+For [long-term support (LTS)](https://ubuntu.com/security/docker-images) versions of this image, see [public.ecr.aws/lts/squid](https://gallery.ecr.aws/lts/squid).
4662+
4663+## About Squid
4664+
4665+Squid is a caching proxy for the Web supporting HTTP, HTTPS, FTP, and more. It reduces bandwidth and improves response times by caching and reusing frequently-requested web pages. Squid has extensive access controls and makes a great server accelerator. It runs on most available operating systems, including Windows and is licensed under the GNU GPL.
4666+
4667+
4668+## Tags and Architectures
4669+![LTS](https://assets.ubuntu.com/v1/0a5ff561-LTS%402x.png?h=17)
4670+Up to 5 years free security maintenance [from public.ecr.aws/lts/squid](https://gallery.ecr.aws/lts/${repo}).
4671+
4672+![ESM](https://assets.ubuntu.com/v1/572f3fbd-ESM%402x.png?h=17)
4673+Up to 10 years customer security maintenance `from canonical/squid`. [Request access](https://ubuntu.com/security/docker-images#get-in-touch).
4674+
4675+| Channel Tag | | | Currently | Architectures |
4676+|---|---|---|---|---|
4677+ | _**`4.10-20.04_beta`** &nbsp;&nbsp;_ | [![LTS](https://assets.ubuntu.com/v1/0a5ff561-LTS%402x.png?h=17)](https://gallery.ecr.aws/lts/squid) | | Squid 4.10 on Ubuntu&nbsp;20.04&nbsp;LTS| `amd64`, `arm64`, `ppc64el`, `s390x` |
4678+ | `4.13-21.10_edge` &nbsp;&nbsp; | [](https://gallery.ecr.aws/lts/squid) | | Squid 4.13 on Ubuntu&nbsp;21.10&nbsp;| `amd64`, `arm64`, `ppc64el`, `s390x` |
4679+| _`track_risk`_ |
4680+
4681+_The following tags are not available in public.ecr.aws/ubuntu/squid but are shown here for completeness:_
4682+
4683+| Channel Tag | | | Currently | Architectures |
4684+|---|---|---|---|---|
4685+ | _**`4.10-20.04_beta`** &nbsp;&nbsp;_ | [![LTS](https://assets.ubuntu.com/v1/0a5ff561-LTS%402x.png?h=17)](https://gallery.ecr.aws/lts/squid) | | Squid 4.10 on Ubuntu&nbsp;20.04&nbsp;LTS| `amd64`, `arm64`, `ppc64el`, `s390x` |
4686+| _`track_risk`_ |
4687+
4688+
4689+Channel Tag shows the most stable channel for that track ordered `stable`, `candidate`, `beta`, `edge`. More risky channels are always implicitly available. So if `beta` is listed, you can also pull `edge`. If `candidate` is listed, you can pull `beta` and `edge`. When `stable` is listed, all four are available. Images are guaranteed to progress through the sequence `edge`, `beta`, `candidate` before `stable`.
4690+
4691+### Commercial use and Extended Security Maintenance channels
4692+If your usage includes commercial redistribution or requires unavailable channels/versions, please [get in touch with the Canonical team](https://ubuntu.com/security/docker-images#get-in-touch) (or using rocks@canonical.com).
4693+
4694+## Docker CLI
4695+
4696+Launch this image locally:
4697+
4698+```sh
4699+docker run -d --name squid-container -e TZ=UTC -p 3128:3128 public.ecr.aws/ubuntu/squid:4.10-20.04_beta
4700+```
4701+Access your Squid proxy at `localhost:3128`.
4702+
4703+#### Parameters
4704+
4705+| Parameter | Description |
4706+|---|---|
4707+| `-e TZ=UTC` | Timezone. |
4708+| `-p 3128:3128` | Expose the proxy service |
4709+| `-v /path/to/logs:/var/log/squid` | Volume to store squid logs |
4710+| `-v /path/to/data:/var/spool/squid` | Volume to store the squid cache |
4711+
4712+
4713+#### Testing/Debugging
4714+
4715+To debug the container:
4716+
4717+```sh
4718+docker logs -f squid-container
4719+```
4720+
4721+To get an interactive shell:
4722+
4723+```sh
4724+docker exec -it squid-container /bin/bash
4725+```
4726+
4727+
4728+## Deploy with Kubernetes
4729+
4730+Works with any Kubernetes; if you don't have one, we recommend you [install MicroK8s](https://microk8s.io/) and `microk8s.enable dns storage` then `snap alias microk8s.kubectl kubectl`.
4731+
4732+Download
4733+[squid.conf](https://git.launchpad.net/~canonical-server/ubuntu-docker-images/+git/squid/plain/examples/config/squid.conf) and
4734+[squid-deployment.yml](https://git.launchpad.net/~canonical-server/ubuntu-docker-images/+git/squid/plain/examples/squid-deployment.yml) and set `containers.squid.image` in `squid-deployment.yml` to your chosen channel tag (e.g. `public.ecr.aws/ubuntu/squid:4.10-20.04_beta`), then:
4735+
4736+```sh
4737+kubectl create configmap squid-config --from-file=squid=squid.conf
4738+kubectl apply -f squid-deployment.yml
4739+```
4740+
4741+You can now access the squid proxy on port 3128
4742+
4743+## Bugs and feature requests
4744+
4745+If you find a bug in our image or want to request a specific feature, please file a bug here:
4746+
4747+[https://bugs.launchpad.net/ubuntu-docker-images/+filebug](https://bugs.launchpad.net/ubuntu-docker-images/+filebug)
4748+
4749+Please title the bug "`squid: <issue summary>`". Make sure to include the digest of the image you are using, from:
4750+
4751+```sh
4752+docker images --no-trunc --quiet public.ecr.aws/ubuntu/squid:<tag>
4753+```
4754+
4755+
4756diff --git a/docs/public.ecr.aws/ubuntu/telegraf.md b/docs/public.ecr.aws/ubuntu/telegraf.md
4757new file mode 100644
4758index 0000000..508925d
4759--- /dev/null
4760+++ b/docs/public.ecr.aws/ubuntu/telegraf.md
4761@@ -0,0 +1,89 @@
4762+# Telegraf™ software | Ubuntu
4763+
4764+Current Telegraf™ software Docker Image [from Canonical](https://ubuntu.com/security/docker-images), based on Ubuntu. Receives security updates and rolls to newer Telegraf™ software or Ubuntu release.
4765+
4766+## About Telegraf™ software
4767+
4768+Telegraf is an agent for collecting, processing, aggregating, and writing metrics. Design goals are to have a minimal memory footprint with a plugin system so that developers in the community can easily add support for collecting metrics. Read more on the [Telegraf website](https://www.influxdata.com/time-series-platform/telegraf/).
4769+
4770+
4771+## Tags and Architectures
4772+![LTS](https://assets.ubuntu.com/v1/0a5ff561-LTS%402x.png?h=17)
4773+Up to 5 years free security maintenance. [Request access](https://ubuntu.com/security/docker-images#get-in-touch).
4774+
4775+![ESM](https://assets.ubuntu.com/v1/572f3fbd-ESM%402x.png?h=17)
4776+Up to 10 years customer security maintenance `from canonical/telegraf`. [Request access](https://ubuntu.com/security/docker-images#get-in-touch).
4777+
4778+| Channel Tag | | | Currently | Architectures |
4779+|---|---|---|---|---|
4780+ | **`1.17-21.04_beta`** &nbsp;&nbsp; | [](https://gallery.ecr.aws/lts/telegraf) | | Telegraf™ software 1.17 on Ubuntu&nbsp;21.04&nbsp;| `amd64`, `arm64`, `ppc64el`, `s390x` |
4781+ | `1.15-20.04_beta` &nbsp;&nbsp; | [](https://gallery.ecr.aws/lts/telegraf) | | Telegraf™ software 1.15.2 on Ubuntu&nbsp;20.04&nbsp;LTS| `amd64`, `arm64`, `ppc64el`, `s390x` |
4782+| _`track_risk`_ |
4783+
4784+
4785+Channel Tag shows the most stable channel for that track ordered `stable`, `candidate`, `beta`, `edge`. More risky channels are always implicitly available. So if `beta` is listed, you can also pull `edge`. If `candidate` is listed, you can pull `beta` and `edge`. When `stable` is listed, all four are available. Images are guaranteed to progress through the sequence `edge`, `beta`, `candidate` before `stable`.
4786+
4787+### Commercial use and Extended Security Maintenance channels
4788+If your usage includes commercial redistribution or requires unavailable channels/versions, please [get in touch with the Canonical team](https://ubuntu.com/security/docker-images#get-in-touch) (or using rocks@canonical.com). **This repository has no LTS channel yet, please get in touch if you need one.**
4789+
4790+## Docker CLI
4791+
4792+Launch this image locally:
4793+
4794+```sh
4795+docker run -d --name telegraf-container -e TZ=UTC -p 30273:9273 public.ecr.aws/ubuntu/telegraf:1.17-21.04_beta
4796+```
4797+Access your Telegraf server at `localhost:30273`.
4798+
4799+#### Parameters
4800+
4801+| Parameter | Description |
4802+|---|---|
4803+| `-e TZ=UTC` | Timezone. |
4804+| `-p 30273:9273` | Expose Telegraf on `localhost:30273`. |
4805+| `-v /path/to/telegraf.conf:/etc/telegraf/telegraf.conf` | Local [configuration file](https://docs.influxdata.com/telegraf/) `telegraf.conf` (try [this example](https://git.launchpad.net/~canonical-server/ubuntu-docker-images/+git/telegraf/plain/examples/config/telegraf.conf)). |
4806+
4807+
4808+#### Testing/Debugging
4809+
4810+To debug the container:
4811+
4812+```sh
4813+docker logs -f telegraf-container
4814+```
4815+
4816+To get an interactive shell:
4817+
4818+```sh
4819+docker exec -it telegraf-container /bin/bash
4820+```
4821+
4822+
4823+## Deploy with Kubernetes
4824+
4825+Works with any Kubernetes; if you don't have one, we recommend you [install MicroK8s](https://microk8s.io/) and `microk8s.enable dns storage` then `snap alias microk8s.kubectl kubectl`.
4826+
4827+Download
4828+[telegraf.conf](https://git.launchpad.net/~canonical-server/ubuntu-docker-images/+git/telegraf/plain/examples/config/telegraf.conf) and
4829+[telegraf-deployment.yml](https://git.launchpad.net/~canonical-server/ubuntu-docker-images/+git/telegraf/plain/examples/telegraf-deployment.yml) and set `containers.telegraf.image` in `telegraf-deployment.yml` to your chosen channel tag (e.g. `public.ecr.aws/ubuntu/telegraf:1.17-21.04_beta`), then:
4830+
4831+```sh
4832+kubectl create configmap telegraf-config --from-file=main-config=telegraf.conf
4833+kubectl apply -f telegraf-deployment.yml
4834+```
4835+
4836+You will now be able to connect to the Telegraf server on `localhost:30073`.
4837+
4838+## Bugs and feature requests
4839+
4840+If you find a bug in our image or want to request a specific feature, please file a bug here:
4841+
4842+[https://bugs.launchpad.net/ubuntu-docker-images/+filebug](https://bugs.launchpad.net/ubuntu-docker-images/+filebug)
4843+
4844+Please title the bug "`telegraf: <issue summary>`". Make sure to include the digest of the image you are using, from:
4845+
4846+```sh
4847+docker images --no-trunc --quiet public.ecr.aws/ubuntu/telegraf:<tag>
4848+```
4849+
4850+
4851diff --git a/templates/README_DOCKERHUB.md b/templates/README_DOCKERHUB.md
4852index e66ca40..107b42e 100644
4853--- a/templates/README_DOCKERHUB.md
4854+++ b/templates/README_DOCKERHUB.md
4855@@ -1,21 +1,37 @@
4856 # ${application} | Ubuntu
4857
4858-Current ${application} Docker Image from Ubuntu. Receives security updates and rolls to newer ${application} or Ubuntu LTS. This repository is exempted from per-user rate limits. For [LTS Docker Image](https://ubuntu.com/security/docker-images) versions of this image, see `lts/${repo}`.
4859+Current ${application} Docker Image [from Canonical](https://ubuntu.com/security/docker-images), based on Ubuntu. Receives security updates and rolls to newer ${application} or Ubuntu release. **This repository is free to use and exempted from per-user rate limits.**
4860+<!-- For [LTS Docker Image](https://ubuntu.com/security/docker-images) versions of this image, see `lts/${repo}`. -->
4861 <%
4862 baserepo='ubuntu'
4863- distroversion=base.strip('Ubuntu').strip('LTS').lstrip().rstrip()
4864- swver='.'.join(version.split(".")[:2])
4865- pretag=swver+'-'+distroversion+'_'
4866- tag=pretag+'beta'
4867+ tag='latest'
4868 %>
4869-<%include file="header.md" args="tag=tag, pretag=pretag, baserepo=baserepo, **locals()['pageargs']"/>
4870+<%include file="header.md" args="baserepo=baserepo, **locals()['pageargs']"/>
4871
4872 | Channel Tag | | | Currently | Architectures |
4873 |---|---|---|---|---|
4874-| **`${tag}`** &nbsp;&nbsp; | | | ${application} ${version} on ${base} | ${", ".join(map(lambda x: "`"+x+"`", architectures))} |
4875+% for i, release in enumerate(releases):
4876+<%
4877+ first=i==0
4878+ track=str(release['track'])
4879+ risk=str(release['risk'])
4880+ base=str(release['base'])
4881+ LTS_BASES=['18.04', '20.04', '22.04']
4882+ ESM_BASES=['16.04']
4883+ basetype='LTS' if base in LTS_BASES else 'ESM' if base in ESM_BASES else ''
4884+ type=str(release['type']) if 'type' in release else ''
4885+ version=str(release['version']) if 'version' in release else track
4886+ architectures=", ".join(map(lambda x: "`"+x+"`", release['architectures']))
4887+ swver='.'.join(track.split(".")[:2])
4888+ thistag=swver+'-'+base+'_'+''+risk
4889+ tag=thistag if first else tag
4890+%> | ${'**`'+thistag+'`**' if first else '`'+thistag+'`'} &nbsp;&nbsp; | ${'![LTS](https://assets.ubuntu.com/v1/0a5ff561-LTS%402x.png?h=17)' if type == 'LTS' else ''} | | ${application} ${version} on Ubuntu&nbsp;${base}&nbsp;${basetype}| ${architectures} |
4891+% endfor
4892 | _`track_risk`_ |
4893
4894 <%include file="channels_message.md" />
4895+### Commercial use and Extended Security Maintenance channels
4896+If your usage includes commercial redistribution or requires unavailable channels/versions, please [get in touch with the Canonical team](https://ubuntu.com/security/docker-images#get-in-touch) (or using rocks@canonical.com).
4897
4898 ## Usage
4899-<%include file="common_usage.md" args="tag=tag, pretag=pretag, baserepo=baserepo, **locals()['pageargs']"/>
4900+<%include file="common_usage.md" args="tag=tag, baserepo=baserepo, **locals()['pageargs']"/>
4901diff --git a/templates/README_ECR.md b/templates/README_ECR.md
4902new file mode 100644
4903index 0000000..47ae031
4904--- /dev/null
4905+++ b/templates/README_ECR.md
4906@@ -0,0 +1,54 @@
4907+# ${application} | Ubuntu
4908+<%
4909+ baserepo='public.ecr.aws/ubuntu'
4910+ tag='latest'
4911+ lts_releases=list(filter(lambda release : release['type'] == 'LTS' or release['type'] == 'ESM' if 'type' in release else False, releases))
4912+ current_releases=[releases.pop(0)]+[release for release in releases if release not in lts_releases]
4913+ has_an_lts=len(lts_releases)>0
4914+%>
4915+Current ${application} Docker Image [from Canonical](https://ubuntu.com/security/docker-images), based on Ubuntu. Receives security updates and rolls to newer ${application} or Ubuntu release.
4916+% if has_an_lts:
4917+For [long-term support (LTS)](https://ubuntu.com/security/docker-images) versions of this image, see [public.ecr.aws/lts/${repo}](https://gallery.ecr.aws/lts/${repo}).
4918+% endif
4919+
4920+## About ${application}
4921+
4922+${description}
4923+
4924+## Tags and Architectures
4925+![LTS](https://assets.ubuntu.com/v1/0a5ff561-LTS%402x.png?h=17)
4926+Up to 5 years free security maintenance${' [from public.ecr.aws/lts/'+repo+'](https://gallery.ecr.aws/lts/${repo})' if has_an_lts else '. [Request access](https://ubuntu.com/security/docker-images#get-in-touch)'}.
4927+
4928+![ESM](https://assets.ubuntu.com/v1/572f3fbd-ESM%402x.png?h=17)
4929+Up to 10 years customer security maintenance `from canonical/${repo}`. [Request access](https://ubuntu.com/security/docker-images#get-in-touch).
4930+% for k, list_releases in enumerate([current_releases, lts_releases] if has_an_lts else [current_releases]):
4931+
4932+| Channel Tag | | | Currently | Architectures |
4933+|---|---|---|---|---|
4934+% for i, release in enumerate(list_releases):
4935+<%
4936+ first=i==0
4937+ track=str(release['track'])
4938+ risk=str(release['risk'])
4939+ base=str(release['base'])
4940+ LTS_BASES=['18.04', '20.04', '22.04']
4941+ ESM_BASES=['16.04']
4942+ basetype='LTS' if base in LTS_BASES else 'ESM' if base in ESM_BASES else ''
4943+ type=str(release['type']) if 'type' in release else ''
4944+ version=str(release['version']) if 'version' in release else track
4945+ architectures=", ".join(map(lambda x: "`"+x+"`", release['architectures']))
4946+ swver='.'.join(track.split(".")[:2])
4947+ thistag=swver+'-'+base+'_'+''+risk
4948+ tag=thistag if first else tag
4949+%> | ${'_' if type == 'LTS' else ''}${'**`'+thistag+'`**' if first else '`'+thistag+'`'} &nbsp;&nbsp;${'_' if type == 'LTS' else ''} | [${'![LTS](https://assets.ubuntu.com/v1/0a5ff561-LTS%402x.png?h=17)' if type == 'LTS' else ''}](https://gallery.ecr.aws/lts/${repo}) | | ${application} ${version} on Ubuntu&nbsp;${base}&nbsp;${basetype}| ${architectures} |
4950+% endfor
4951+| _`track_risk`_ |
4952+
4953+${'_The following tags are not available in '+baserepo+'/'+repo+' but are shown here for completeness:_' if k==0 and has_an_lts else ''}
4954+% endfor
4955+<%include file="channels_message.md" />
4956+### Commercial use and Extended Security Maintenance channels
4957+If your usage includes commercial redistribution or requires unavailable channels/versions, please [get in touch with the Canonical team](https://ubuntu.com/security/docker-images#get-in-touch) (or using rocks@canonical.com). ${'' if has_an_lts else '**This repository has no LTS channel yet, please get in touch if you need one.**'}
4958+
4959+## Docker CLI
4960+<%include file="common_usage.md" args="tag=tag, baserepo=baserepo, **locals()['pageargs']"/>
4961diff --git a/templates/README_ECR_LTS.md b/templates/README_ECR_LTS.md
4962new file mode 100644
4963index 0000000..c060f1a
4964--- /dev/null
4965+++ b/templates/README_ECR_LTS.md
4966@@ -0,0 +1,55 @@
4967+# ${application} LTS Docker Image
4968+<%
4969+ baserepo='public.ecr.aws/lts'
4970+ tag='latest'
4971+ lts_releases=list(filter(lambda release : release['type'] == 'LTS' or release['type'] == 'ESM' if 'type' in release else False, releases))
4972+ has_an_lts=len(lts_releases)>0
4973+%> ${'' if has_an_lts else '**This repository has no LTS channel yet, please [get in touch](https://ubuntu.com/security/docker-images#get-in-touch) if you need one.**'}
4974+
4975+## LTS Docker Image Portfolio
4976+The [LTS Docker Image Portfolio](https://ubuntu.com/security/docker-images) are consistent, compliant, minimal and secure images with Extended Security Maintenance (ESM) commitments from Canonical.
4977+
4978+## About ${application}
4979+
4980+${description}
4981+
4982+## Tags and Architectures
4983+![LTS](https://assets.ubuntu.com/v1/0a5ff561-LTS%402x.png?h=17)
4984+Up to 5 years free security maintenance from this repository.
4985+
4986+![ESM](https://assets.ubuntu.com/v1/572f3fbd-ESM%402x.png?h=17)
4987+Up to 10 years customer security maintenance `from canonical/${repo}`. [Request access](https://ubuntu.com/security/docker-images#get-in-touch).
4988+
4989+<!-- _Tags in italics are not available in ${baserepo}/${repo} but are shown here for completeness._ -->
4990+
4991+| Channel Tag | ![LTS](https://assets.ubuntu.com/v1/0a5ff561-LTS%402x.png?h=17) until | ![ESM](https://assets.ubuntu.com/v1/572f3fbd-ESM%402x.png?h=17) until | Currently | Architectures |
4992+|---|---|---|---|---|
4993+% for i, release in enumerate(lts_releases):
4994+<%
4995+ first=i==0
4996+ track=str(release['track'])
4997+ risk=str(release['risk'])
4998+ base=str(release['base'])
4999+ LTS_BASES=['18.04', '20.04', '22.04']
5000+ ESM_BASES=['16.04']
The diff has been truncated for viewing.

Subscribers

People subscribed via source and target branches