Merge ~sergiodj/ubuntu-docker-images/+git/templates:delete-data-dir into ~ubuntu-docker-images/ubuntu-docker-images/+git/templates:main

Proposed by Sergio Durigan Junior
Status: Merged
Merged at revision: 4ee068f39335dd76dcaef8d45e7b55dac80d2e58
Proposed branch: ~sergiodj/ubuntu-docker-images/+git/templates:delete-data-dir
Merge into: ~ubuntu-docker-images/ubuntu-docker-images/+git/templates:main
Diff against target: 668 lines (+1/-38)
2 files modified
dev/null (+0/-37)
templates/HACKING_docs.md (+1/-1)
Reviewer Review Type Date Requested Status
Athos Ribeiro Approve
Canonical Server Pending
Review via email: mp+404436@code.launchpad.net

Description of the change

We've been keeping each image's YAML data (used to generate the templates) inside their own repositories. Our 'data/' directory is a relic from when we used to keep everything in this repo.

This commit gets rid of it, and also updates the HACKING_docs.md template to make it clearer where the data is located.

To post a comment you must log in.
Revision history for this message
Athos Ribeiro (athos-ribeiro) wrote :

LGTM

Thanks, Sergio

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

On Monday, June 21 2021, Athos Ribeiro wrote:

> Review: Approve
>
> LGTM
>
> Thanks, Sergio

Thanks, Athos.

--
Sergio
GPG key ID: E92F D0B3 6B14 F1F4 D8E0 EB2F 106D A1C8 C3CB BF14

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1diff --git a/data/apache2.yaml b/data/apache2.yaml
2deleted file mode 100644
3index e95c47f..0000000
4--- a/data/apache2.yaml
5+++ /dev/null
6@@ -1,43 +0,0 @@
7-application: Apache2
8-main: true
9-repo: apache2
10-description: >
11- 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/).
12-version: 2.4.41
13-base: Ubuntu 20.04 LTS
14-architectures:
15- - amd64
16- - arm64
17- - ppc64el
18- - s390x
19-docker:
20- parameters:
21- - -p 8080:80
22- access: Access your Apache2 server at `http://localhost:8080`.
23-parameters:
24- - type: -e
25- value: TZ=UTC
26- description: Timezone.
27- - type: -p
28- value: 8080:80
29- description: Expose Apache2 on `localhost:8080`.
30- - type: -v
31- value: /local/path/to/website:/var/www/html
32- description: Mount and serve a local website.
33- - type: -v
34- value: /path/to/apache2.conf:/etc/apache2/apache2.conf
35- 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)).
36-debug:
37- - nothing
38-microk8s:
39- configmap:
40- files:
41- - key: apache2
42- name: apache2.conf
43- link: https://git.launchpad.net/~canonical-server/ubuntu-docker-images/+git/apache2/plain/examples/config/apache2.conf
44- - key: apache2-site
45- name: index.html
46- link: https://git.launchpad.net/~canonical-server/ubuntu-docker-images/+git/apache2/plain/examples/config/html/index.html
47- deploy:
48- link: https://git.launchpad.net/~canonical-server/ubuntu-docker-images/+git/apache2/plain/examples/apache2-deployment.yml
49- access: You will now be able to connect to the apache2 server on `http://localhost:30080`.
50diff --git a/data/cortex.yaml b/data/cortex.yaml
51deleted file mode 100644
52index b3cd981..0000000
53--- a/data/cortex.yaml
54+++ /dev/null
55@@ -1,44 +0,0 @@
56-application: Cortex
57-main: false
58-repo: cortex
59-description: |
60- Cortex provides horizontally scalable, highly available, multi-tenant, long term storage for Prometheus.
61-
62- * 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.
63- * 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.
64- * 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.
65- * 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.
66-
67- Read more on the [Cortex website](https://cortexmetrics.io/).
68-version: 1.4.0
69-base: Ubuntu 20.04 LTS
70-architectures:
71- - amd64
72- - arm64
73- - ppc64el
74- - s390x
75-docker:
76- parameters:
77- - -p 32709:9009
78- access: Access your Cortex server at `http://localhost:32709`.
79-parameters:
80- - type: -e
81- value: TZ=UTC
82- description: Timezone.
83- - type: -p
84- value: 32709:9009
85- description: Expose Cortex on `localhost:32709`.
86- - type: -v
87- value: /my/local/cortex.yaml:/etc/cortex/cortex.yaml
88- 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)).
89-debug:
90- - nothing
91-microk8s:
92- configmap:
93- files:
94- - key: main-config
95- name: cortex.yaml
96- link: https://git.launchpad.net/~canonical-server/ubuntu-docker-images/+git/cortex/plain/oci/examples/config/cortex.yaml
97- deploy:
98- link: https://git.launchpad.net/~canonical-server/ubuntu-docker-images/+git/cortex/plain/oci/examples/cortex-deployment.yml
99- access: You will now be able to connect to the Cortex server on `localhost:32709`.
100diff --git a/data/grafana.yaml b/data/grafana.yaml
101deleted file mode 100644
102index 35e436f..0000000
103--- a/data/grafana.yaml
104+++ /dev/null
105@@ -1,46 +0,0 @@
106-application: Grafana
107-main: false
108-repo: grafana
109-description: >
110- Grafana is a feature rich metrics dashboard and graph editor for Cloudwatch, Elasticsearch, Graphite, InfluxDB, OpenTSB, Prometheus, and Hosted Metrics.
111- Read more on the [Grafana website](https://grafana.com/docs/).
112-version: 7.2.0
113-base: Ubuntu 20.04 LTS
114-architectures:
115- - amd64
116- - arm64
117- - ppc64el
118- - s390x
119-docker:
120- parameters:
121- - -p 30000:3000
122- access: Access your Grafana server at `localhost:30000`.
123-parameters:
124- - type: -e
125- value: TZ=UTC
126- description: Timezone.
127- - type: -p
128- value: 30000:3000
129- description: Expose Grafana on `localhost:30000`.
130- - type: -v
131- value: /path/to/grafana/provisioning/files/:/etc/grafana/provisioning/
132- description: Pass a directory with files to provision a Grafana `datasource` and `dashboard` (see [documentation](https://grafana.com/docs/grafana/latest/administration/provisioning/)).
133- - type: -v
134- value: /path/to/persisted/data:/var/lib/grafana
135- description: Persist data with a voulme instead of initializing a new database for each newly launched container.
136-debug: None
137-microk8s:
138- deploy:
139- link: https://git.launchpad.net/~canonical-server/ubuntu-docker-images/+git/grafana/plain/examples/grafana-deployment.yml
140- access: You will now be able to connect to the Grafana on `http://localhost:30000`.
141- configmap:
142- files:
143- - key: grafana-datasource
144- name: datasource.yml
145- link: https://git.launchpad.net/~canonical-server/ubuntu-docker-images/+git/grafana/plain/examples/config/datasource.yml
146- - key: grafana-dashboard-definition
147- name: dashboard.yml
148- link: https://git.launchpad.net/~canonical-server/ubuntu-docker-images/+git/grafana/plain/examples/config/dashboard.yml
149- - key: grafana-dashboard
150- name: system-stats-dashboard.json
151- link: https://git.launchpad.net/~canonical-server/ubuntu-docker-images/+git/grafana/plain/examples/config/system-stats-dashboard.json
152diff --git a/data/memcached.yaml b/data/memcached.yaml
153deleted file mode 100644
154index 2c157d8..0000000
155--- a/data/memcached.yaml
156+++ /dev/null
157@@ -1,71 +0,0 @@
158-application: Memcached
159-main: true
160-repo: memcached
161-description: >
162- 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.
163- 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/).
164-version: 1.5.22
165-base: Ubuntu 20.04 LTS
166-architectures:
167- - amd64
168- - arm64
169- - ppc64el
170- - s390x
171-docker:
172- nothing:
173-parameters:
174- - type: -e
175- value: TZ=UTC
176- description: Timezone.
177- - type: -e
178- value: MEMCACHED_CACHE_SIZE=64MB
179- description: Determines the size of the cache.
180- - type: -e
181- value: MEMCACHED_MAX_CONNECTIONS=1024
182- description: Determines the maximum number of concurrent connections.
183- - type: -e
184- value: MEMCACHED_THREADS=4
185- description: Determines the number of threads to process requests.
186- - type: -e
187- value: MEMCACHED_PASSWORD
188- 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.
189- - type: -e
190- value: MEMCACHED_USERNAME
191- description: Define a new user. If this option is passed a password is needed to authenticate the new user.
192- - type: -p
193- value: 11211
194- description: Memcached is exposed inside the container on port `11211`.
195-debug:
196- text: |
197- <details>
198- <summary>You can access the Memcached instance with telnet from another container (click to expand).</summary>
199-
200- ```sh
201- # Create a dedicated network
202- $ docker network create memcached-network
203- # Connect the main container to it
204- $ docker network connect memcached-network memcached-container
205- # Run an interactive container with the latest Ubuntu
206- $ docker run -it --rm --name telnet --network memcached-network ubuntu bash
207- # Install the telnet cli from within the container
208- > apt update && apt install telnet -y
209- # Connect to the memcached instance using telnet
210- > telnet memcached-container 11211
211- Trying 172.30.0.2...
212- Connected to memcached.
213- Escape character is '^]'.
214- ```
215- From there you can run `memcached` commands, as documented in [their wiki](https://github.com/memcached/memcached/wiki/Commands).
216-
217- </details>
218-
219- ```sh
220- $ telnet memcached-container 11211
221- ```
222-
223- There are cases where one might want to pass some memcached command line flags that are not configurable via environment variables.
224- In this case you can append the flags themselves or a shell script to the run command.
225-microk8s:
226- deploy:
227- link: https://git.launchpad.net/~canonical-server/ubuntu-docker-images/+git/memcached/plain/examples/memcached-deployment.yml
228- access: Memcached will be listening on port `31211` in your host.
229diff --git a/data/mysql.yaml b/data/mysql.yaml
230deleted file mode 100644
231index 7b91e51..0000000
232--- a/data/mysql.yaml
233+++ /dev/null
234@@ -1,80 +0,0 @@
235-application: MySQL
236-main: true
237-repo: mysql
238-description: >
239- MySQL is a fast, stable and true multi-user, multi-threaded SQL database
240- server. SQL (Structured Query Language) is the most popular database query
241- language in the world. The main goals of MySQL are speed, robustness and ease
242- of use. Read more on the [MySQL website](https://dev.mysql.com/doc/refman/8.0/en/).
243-version: 8.0.22
244-base: Ubuntu 20.04 LTS
245-architectures:
246- - amd64
247- - arm64
248- - s390x
249-docker:
250- parameters:
251- - -p 30306:3306
252- - -e MYSQL_ROOT_PASSWORD=My:S3cr3t/
253- access: Access your MySQL server at `localhost:30306`.
254-parameters:
255- - type: -e
256- value: TZ=UTC
257- description: Timezone.
258- - type: -e
259- value: MYSQL_ROOT_PASSWORD=secret_for_root
260- description: Set the password for the `root` user. This option is **mandatory** and **must not be empty**.
261- - type: -e
262- value: MYSQL_PASSWORD=secret
263- description: Set the password for the `MYSQL_USER` user.
264- - type: -e
265- value: MYSQL_USER=john
266- description: Create a new user with superuser privileges. This is used in conjunction with `MYSQL_PASSWORD`.
267- - type: -e
268- value: MYSQL_DATABASE=db_test
269- description: Set the name of the default database.
270- - type: -e
271- value: MYSQL_ALLOW_EMPTY_PASSWORD=yes
272- 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**.
273- - type: -e
274- value: MYSQL_RANDOM_ROOT_PASSWORD=yes
275- description: Generate a random initial password for the `root` user using `pwgen`. It will be printed in the logs, search for `GENERATED ROOT PASSWORD`.
276- - type: -e
277- value: MYSQL_ONETIME_PASSWORD=yes
278- description: Set `root` user as experide once initialization is complete, forcing a password change on first login.
279- - type: -e
280- value: MYSQL_INITSB_SKIP_TZINFO=yes
281- description: Timezone data is automatically loaded via entrypoint script, set this variable to any non-empty value to disable it.
282- - type: -p
283- value: 30306:3306
284- description: Expose MySQL server on `localhost:30306`.
285- - type: -v
286- value: /path/to/data:/var/lib/mysql
287- description: Persist data instead of initializing a new database every time you launch a new container.
288- - type: -v
289- value: /path/to/config/files/:/etc/mysql/mysql.conf.d/
290- 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)).
291-debug:
292- extraparagraph: |
293- #### Initialization Scripts
294-
295- 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:
296-
297- * Run any `*.sql` files in alphabetically order. By default the target database is specified via `MYSQL_DATABASE`.
298- * Run any executable `*.sh` scripts in alphabetically order.
299- * Source any non-executable `*.sh` scripts in alphabetically order.
300-
301- 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.
302- network:
303- client: mysql
304- args: -hmysql-container -uroot -p
305- helper: The password will be asked and you can enter `My:S3cr3t/`. Now, you are logged in and can enjoy your new instance.
306-microk8s:
307- configmap:
308- files:
309- - key: main-config
310- name: my-custom.cnf
311- link: https://git.launchpad.net/~canonical-server/ubuntu-docker-images/+git/mysql/plain/examples/config/my-custom.cnf
312- deploy:
313- link: https://git.launchpad.net/~canonical-server/ubuntu-docker-images/+git/mysql/plain/examples/mysql-deployment.yml
314- access: You will now be able to connect to the MySQL server on `localhost:30306`.
315diff --git a/data/nginx.yaml b/data/nginx.yaml
316deleted file mode 100644
317index 63f8c21..0000000
318--- a/data/nginx.yaml
319+++ /dev/null
320@@ -1,46 +0,0 @@
321-application: Nginx
322-main: true
323-repo: nginx
324-description: >
325- 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/).
326-version: 1.18.0
327-base: Ubuntu 20.04 LTS
328-architectures:
329- - amd64
330- - arm64
331- - ppc64el
332- - s390x
333-docker:
334- parameters:
335- - -p 8080:80
336- access: Access your Nginx server at `http://localhost:8080`.
337-parameters:
338- - type: -e
339- value: TZ=UTC
340- description: Timezone.
341- - type: -p
342- value: 8080:80
343- description: Expose Nginx on `localhost:8080`.
344- - type: -v
345- value: /local/path/to/website:/var/www/html
346- description: Mount and serve a local website.
347- - type: -v
348- value: /path/to/conf.template:/etc/nginx/templates/conf.template
349- 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;`).
350- - type: -v
351- value: /path/to/nginx.conf:/etc/nginx/nginx.conf
352- 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)).
353-debug:
354- - nothing
355-microk8s:
356- configmap:
357- files:
358- - key: nginx
359- name: nginx.conf
360- link: https://git.launchpad.net/~canonical-server/ubuntu-docker-images/+git/nginx/plain/examples/config/nginx.conf
361- - key: nginx-site
362- name: index.html
363- link: https://git.launchpad.net/~canonical-server/ubuntu-docker-images/+git/nginx/plain/examples/config/html/index.html
364- deploy:
365- link: https://git.launchpad.net/~canonical-server/ubuntu-docker-images/+git/nginx/plain/examples/nginx-deployment.yml
366- access: You will now be able to connect to the nginx server on `http://localhost:31080`.
367diff --git a/data/postgres.yaml b/data/postgres.yaml
368deleted file mode 100644
369index a772c6b..0000000
370--- a/data/postgres.yaml
371+++ /dev/null
372@@ -1,74 +0,0 @@
373-application: Postgres
374-main: true
375-repo: postgres
376-description: >
377- 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/).
378-version: "12.4"
379-base: Ubuntu 20.04 LTS
380-architectures:
381- - amd64
382- - arm64
383- - s390x
384-docker:
385- parameters:
386- - -p 30432:5432
387- - -e POSTGRES_PASSWORD=My:s3Cr3t/
388- access: Access your PostgreSQL server at `localhost:30432`.
389-parameters:
390- - type: -e
391- value: TZ=UTC
392- description: Timezone.
393- - type: -e
394- value: POSTGRES_PASSWORD=secret
395- 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**.
396- - type: -e
397- value: POSTGRES_USER=john
398- description: Create a new user with superuser privileges. This is used in conjunction with `POSTGRES_PASSWORD`.
399- - type: -e
400- value: POSTGRES_DB=db_test
401- description: Set the name of the default database.
402- - type: -e
403- value: POSTGRES_INITDB_ARGS="--data-checksums"
404- description: Pass arguments to the `postgres initdb` call.
405- - type: -e
406- value: POSTGRES_INITDB_WALDIR=/path/to/location
407- description: Set the location of the Postgres transaction log. By default it is stored in a subdirectory of the main Postgres data folder (`PGDATA`).
408- - type: -e
409- value: POSTGRES_HOST_AUTH_METHOD=trust
410- 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`."
411- - type: -e
412- value: PGDATA=/path/to/location
413- description: Set the location of the database files. The default is `/var/lib/postgresql/data`.
414- - type: -p
415- value: 30432:5432
416- description: Expose Postgres on `localhost:30432`.
417- - type: -v
418- value: /path/to/postgresql.conf:/etc/postgresql/postgresql.conf
419- 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)).
420- - type: -v
421- value: /path/to/persisted/data:/var/lib/postgresql/data
422- description: Persist data instead of initializing a new database every time you launch a new container.
423-debug:
424- extraparagraph: |
425- #### Initialization Scripts
426-
427- 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:
428-
429- * Run any `*.sql` files in alphabetically order. It will be executed with `POSTGRES_USER`.
430- * Run any executable `*.sh` scripts in alphabetically order.
431- * Source any non-executable `*.sh` scripts in alphabetically order.
432-
433- 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.
434- network:
435- client: psql
436- args: -h postgres-container -U postgres
437- helper: The password will be asked and you can enter `My:s3Cr3t/`. Now, you are logged in and can enjoy your new instance.
438-microk8s:
439- configmap:
440- files:
441- - key: main-config
442- name: postgresql.conf
443- link: https://git.launchpad.net/~canonical-server/ubuntu-docker-images/+git/postgresql/plain/examples/config/postgresql.conf
444- deploy:
445- link: https://git.launchpad.net/~canonical-server/ubuntu-docker-images/+git/postgresql/plain/examples/postgres-deployment.yml
446- access: You will now be able to connect to the Postgres server on `localhost:30306`.
447diff --git a/data/prometheus-alertmanager.yaml b/data/prometheus-alertmanager.yaml
448deleted file mode 100644
449index f02be88..0000000
450--- a/data/prometheus-alertmanager.yaml
451+++ /dev/null
452@@ -1,40 +0,0 @@
453-application: Prometheus Alertmanager
454-main: false
455-repo: prometheus-alertmanager
456-description: >
457- 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/).
458-version: 0.21.0
459-base: Ubuntu 20.04 LTS
460-architectures:
461- - amd64
462- - arm64
463- - ppc64el
464- - s390x
465-docker:
466- parameters:
467- - -p 30093:9093
468- access: Access your Prometheus Alertmanager server at `localhost:30093`.
469-parameters:
470- - type: -e
471- value: TZ=UTC
472- description: Timezone.
473- - type: -p
474- value: 30093:9093
475- description: Expose Prometheus Alertmanager on `localhost:30093`.
476- - type: -v
477- value: /path/to/alertmanager.yml:/etc/prometheus/alertmanager.yml
478- 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)).
479- - type: -v
480- value: /path/to/persisted/data:/alertmanager
481- 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."
482-debug:
483- - nothing
484-microk8s:
485- configmap:
486- files:
487- - key: alertmanager
488- name: alertmanager.yml
489- link: https://git.launchpad.net/~canonical-server/ubuntu-docker-images/+git/prometheus-alertmanager/plain/oci/examples/config/alertmanager.yml
490- deploy:
491- link: https://git.launchpad.net/~canonical-server/ubuntu-docker-images/+git/prometheus-alertmanager/plain/oci/examples/alertmanager-deployment.yml
492- access: You will now be able to connect to the Prometheus Alertmanager server on `localhost:30093`.
493diff --git a/data/prometheus.yaml b/data/prometheus.yaml
494deleted file mode 100644
495index 42f5e39..0000000
496--- a/data/prometheus.yaml
497+++ /dev/null
498@@ -1,43 +0,0 @@
499-application: Prometheus
500-main: false
501-repo: prometheus
502-description: >
503- 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/).
504-version: 2.20.1
505-base: Ubuntu 20.04 LTS
506-architectures:
507- - amd64
508- - arm64
509- - ppc64el
510- - s390x
511-docker:
512- parameters:
513- - -p 30090:9090
514- access: Access your Prometheus server at `localhost:30090`.
515-parameters:
516- - type: -e
517- value: TZ=UTC
518- description: Timezone.
519- - type: -p
520- value: 30090:9090
521- description: Expose Prometheus server on `localhost:30090`.
522- - type: -v
523- value: /path/to/prometheus.yml:/etc/prometheus/prometheus.yml
524- 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)).
525- - type: -v
526- value: /path/to/alerts.yml:/etc/prometheus/alerts.yml
527- 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)).
528-debug:
529- - nothing
530-microk8s:
531- configmap:
532- files:
533- - key: prometheus
534- name: prometheus.yml
535- link: https://git.launchpad.net/~canonical-server/ubuntu-docker-images/+git/prometheus/plain/oci/examples/config/prometheus.yml
536- - key: prometheus-alerts
537- name: alerts.yml
538- link: https://git.launchpad.net/~canonical-server/ubuntu-docker-images/+git/prometheus/plain/oci/examples/config/alerts.yml
539- deploy:
540- link: https://git.launchpad.net/~canonical-server/ubuntu-docker-images/+git/prometheus/plain/oci/examples/prometheus-deployment.yml
541- access: You will now be able to connect to the Prometheus on `http://localhost:30090`.
542diff --git a/data/redis.yaml b/data/redis.yaml
543deleted file mode 100644
544index 74fba08..0000000
545--- a/data/redis.yaml
546+++ /dev/null
547@@ -1,68 +0,0 @@
548-application: Redis
549-main: false
550-repo: redis
551-description: >
552- Redis is an open source (BSD licensed), in-memory data structure store, used as a database, cache and message broker.
553- It supports data structures such as strings, hashes, lists, sets, sorted sets with range queries, bitmaps, hyperloglogs, geospatial indexes with radius queries and streams.
554- 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.
555- Read more on the [Redis website](https://redis.io/topics/introduction).
556-version: 5.0.7
557-base: Ubuntu 20.04 LTS
558-architectures:
559- - amd64
560- - arm64
561- - ppc64el
562- - s390x
563-docker:
564- parameters:
565- - -p 30073:6379
566- - -e REDIS_PASSWORD=mypassword
567- access: Access your Redis server at `localhost:30073`.
568-parameters:
569- - type: -e
570- value: TZ=UTC
571- description: Timezone.
572- - type: -e
573- value: ALLOW_EMPTY_PASSWORD
574- description: Set to `yes` to allow connections to `redis-server` without a password. **This setting is not recommended in production environments**.
575- - type: -e
576- value: REDIS_PASSWORD
577- description: Set the desired password to be used.
578- - type: -e
579- value: REDIS_RANDOM_PASSWORD
580- 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`).
581- - type: -e
582- value: REDIS_ALLOW_REMOTE_CONNECTIONS=yes
583- description: Set to `no` to disallow remote connections to `redis-server` (i.e., make `redis-server` listen to `127.0.0.1` only).
584- - type: -e
585- value: REDIS_EXTRA_FLAGS
586- description: Specify extra flags to be passed to `redis-server` when initializing it.
587- - type: -p
588- value: 30073:6379
589- description: Expose redis on `localhost:30073`.
590- - type: -v
591- value: /path/to/redis.conf:/etc/redis/redis.conf
592- 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)).
593-debug:
594- network:
595- client: redis-cli
596- args: -h redis-container
597- followup: |
598- ```
599- Now you can:
600- ```
601- redis:6379> AUTH mypassword
602- OK
603- redis:6379> PING
604- PONG
605- redis:6379>
606-microk8s:
607- configmap:
608- name: redis-config
609- files:
610- - key: redis
611- name: redis.conf
612- link: https://git.launchpad.net/~canonical-server/ubuntu-docker-images/+git/redis/plain/examples/config/redis.conf
613- deploy:
614- link: https://git.launchpad.net/~canonical-server/ubuntu-docker-images/+git/redis/plain/examples/redis-deployment.yml
615- access: You will now be able to connect to the Redis server on `localhost:30073`.
616diff --git a/data/telegraf.yaml b/data/telegraf.yaml
617deleted file mode 100644
618index a63f5cd..0000000
619--- a/data/telegraf.yaml
620+++ /dev/null
621@@ -1,37 +0,0 @@
622-application: Telegraf
623-main: false
624-repo: telegraf
625-description: >
626- 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/).
627-version: 1.15.2
628-base: Ubuntu 20.04 LTS
629-architectures:
630- - amd64
631- - arm64
632- - ppc64el
633- - s390x
634-docker:
635- parameters:
636- - -p 30273:9273
637- access: Access your Telegraf server at `localhost:30273`.
638-parameters:
639- - type: -e
640- value: TZ=UTC
641- description: Timezone.
642- - type: -p
643- value: 30273:9273
644- description: Expose Telegraf on `localhost:30273`.
645- - type: -v
646- value: /path/to/telegraf.conf:/etc/telegraf/telegraf.conf
647- 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)).
648-debug:
649- - nothing
650-microk8s:
651- configmap:
652- files:
653- - key: main-config
654- name: telegraf.conf
655- link: https://git.launchpad.net/~canonical-server/ubuntu-docker-images/+git/telegraf/plain/examples/config/telegraf.conf
656- deploy:
657- link: https://git.launchpad.net/~canonical-server/ubuntu-docker-images/+git/telegraf/plain/examples/telegraf-deployment.yml
658- access: You will now be able to connect to the Telegraf server on `localhost:30073`.
659diff --git a/templates/HACKING_docs.md b/templates/HACKING_docs.md
660index b1ca2d2..632f5c8 100644
661--- a/templates/HACKING_docs.md
662+++ b/templates/HACKING_docs.md
663@@ -26,4 +26,4 @@ The repository containing the templates is located at:
664 https://code.launchpad.net/~canonical-server/ubuntu-docker-images/+git/templates
665
666 The specific data for this image's template can be found inside the
667-`data/` directory.
668+`data/` directory, in the image's own repository.

Subscribers

People subscribed via source and target branches