mirror of
https://github.com/containrrr/watchtower.git
synced 2025-12-14 06:06:38 +01:00
add additional note on gcloud credentials
This commit is contained in:
parent
cddd6c3d4d
commit
90ef4022f7
1 changed files with 24 additions and 6 deletions
|
|
@ -1,12 +1,17 @@
|
||||||
Watchtower supports private Docker image registries. In many cases, accessing a private registry requires a valid username and password (i.e., _credentials_). In order to operate in such an environment, watchtower needs to know the credentials to access the registry.
|
Watchtower supports private Docker image registries. In many cases, accessing a private registry
|
||||||
|
requires a valid username and password (i.e., _credentials_). In order to operate in such an
|
||||||
|
environment, watchtower needs to know the credentials to access the registry.
|
||||||
|
|
||||||
The credentials can be provided to watchtower in a configuration file called `config.json`. There are two ways to generate this configuration file:
|
The credentials can be provided to watchtower in a configuration file called `config.json`.
|
||||||
|
There are two ways to generate this configuration file:
|
||||||
|
|
||||||
* The configuration file can be created manually.
|
* The configuration file can be created manually.
|
||||||
* Call `docker login <REGISTRY_NAME>` and share the resulting configuration file.
|
* Call `docker login <REGISTRY_NAME>` and share the resulting configuration file.
|
||||||
|
|
||||||
### Create the configuration file manually
|
### Create the configuration file manually
|
||||||
Create a new configuration file with the following syntax and a base64 encoded username and password `auth` string:
|
Create a new configuration file with the following syntax and a base64 encoded username and
|
||||||
|
password `auth` string:
|
||||||
|
|
||||||
```json
|
```json
|
||||||
{
|
{
|
||||||
"auths": {
|
"auths": {
|
||||||
|
|
@ -17,27 +22,40 @@ Create a new configuration file with the following syntax and a base64 encoded u
|
||||||
}
|
}
|
||||||
```
|
```
|
||||||
|
|
||||||
`<REGISTRY_NAME>` needs to be replaced by the name of your private registry (e.g., `my-private-registry.example.org`)
|
`<REGISTRY_NAME>` needs to be replaced by the name of your private registry
|
||||||
|
(e.g., `my-private-registry.example.org`)
|
||||||
|
|
||||||
The required `auth` string can be generated as follows:
|
The required `auth` string can be generated as follows:
|
||||||
```bash
|
```bash
|
||||||
echo -n 'username:password' | base64
|
echo -n 'username:password' | base64
|
||||||
```
|
```
|
||||||
|
|
||||||
When the watchtower Docker container is started, the created configuration file (`<PATH>/config.json` in this example) needs to be passed to the container:
|
> ### ℹ️ Username and Password for GCloud
|
||||||
|
>
|
||||||
|
> For gcloud, we'll use `__json_key` as our username and the content
|
||||||
|
> of `gcloudauth.json` as the password.
|
||||||
|
|
||||||
|
When the watchtower Docker container is started, the created configuration file
|
||||||
|
(`<PATH>/config.json` in this example) needs to be passed to the container:
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
docker run [...] -v <PATH>/config.json:/config.json containrrr/watchtower
|
docker run [...] -v <PATH>/config.json:/config.json containrrr/watchtower
|
||||||
```
|
```
|
||||||
|
|
||||||
### Share the Docker configuration file
|
### Share the Docker configuration file
|
||||||
To pull an image from a private registry, `docker login` needs to be called first, to get access to the registry. The provided credentials are stored in a configuration file called `<PATH_TO_HOME_DIR>/.docker/config.json`. This configuration file can be directly used by watchtower. In this case, the creation of an additional configuration file is not necessary.
|
To pull an image from a private registry, `docker login` needs to be called first, to get access
|
||||||
|
to the registry. The provided credentials are stored in a configuration file called `<PATH_TO_HOME_DIR>/.docker/config.json`.
|
||||||
|
This configuration file can be directly used by watchtower. In this case, the creation of an
|
||||||
|
additional configuration file is not necessary.
|
||||||
|
|
||||||
When the Docker container is started, pass the configuration file to watchtower:
|
When the Docker container is started, pass the configuration file to watchtower:
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
docker run [...] -v <PATH_TO_HOME_DIR>/.docker/config.json:/config.json containrrr/watchtower
|
docker run [...] -v <PATH_TO_HOME_DIR>/.docker/config.json:/config.json containrrr/watchtower
|
||||||
```
|
```
|
||||||
|
|
||||||
When creating the watchtower container via docker-compose, use the following lines:
|
When creating the watchtower container via docker-compose, use the following lines:
|
||||||
|
|
||||||
```yaml
|
```yaml
|
||||||
version: "3"
|
version: "3"
|
||||||
[...]
|
[...]
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue