Update Dockerfile and docker-compose
- Dockerfile now tracks the gitlab repository and the master branch. - docker-compose now points to conduit.toml instead of Rocket.toml and its env vars were also renamed from ROCKET_ to CONDUIT_. Furthermore vectorim/riot-web was changed to vectorim/element-web
This commit is contained in:
		
							parent
							
								
									42c9ba2e5c
								
							
						
					
					
						commit
						52a96b3d84
					
				
					 4 changed files with 37 additions and 32 deletions
				
			
		|  | @ -30,7 +30,7 @@ COPY . . | ||||||
| RUN if [[ $LOCAL == "true" ]]; then \ | RUN if [[ $LOCAL == "true" ]]; then \ | ||||||
|         cargo install --path . ; \ |         cargo install --path . ; \ | ||||||
|     else \ |     else \ | ||||||
|         cargo install --git "https://github.com/timokoesters/conduit.git" --rev ${GIT_REF}; \ |         cargo install --git "https://gitlab.com/famedly/conduit.git" --rev ${GIT_REF}; \ | ||||||
|     fi |     fi | ||||||
| 
 | 
 | ||||||
| ########################## RUNTIME IMAGE ########################## | ########################## RUNTIME IMAGE ########################## | ||||||
|  | @ -40,7 +40,7 @@ FROM alpine:3.12 | ||||||
| 
 | 
 | ||||||
| ARG CREATED | ARG CREATED | ||||||
| ARG VERSION | ARG VERSION | ||||||
| ARG GIT_REF=HEAD | ARG GIT_REF=origin/master | ||||||
| 
 | 
 | ||||||
| # Labels according to https://github.com/opencontainers/image-spec/blob/master/annotations.md | # Labels according to https://github.com/opencontainers/image-spec/blob/master/annotations.md | ||||||
| # including a custom label specifying the build command | # including a custom label specifying the build command | ||||||
|  | @ -52,7 +52,7 @@ LABEL org.opencontainers.image.created=${CREATED} \ | ||||||
|       org.opencontainers.image.description="A Matrix homeserver written in Rust" \ |       org.opencontainers.image.description="A Matrix homeserver written in Rust" \ | ||||||
|       org.opencontainers.image.url="https://conduit.rs/" \ |       org.opencontainers.image.url="https://conduit.rs/" \ | ||||||
|       org.opencontainers.image.revision=${GIT_REF} \ |       org.opencontainers.image.revision=${GIT_REF} \ | ||||||
|       org.opencontainers.image.source="https://git.koesters.xyz/timo/conduit.git" \ |       org.opencontainers.image.source="https://gitlab.com/famedly/conduit.git" \ | ||||||
|       org.opencontainers.image.licenses="Apache-2.0" \ |       org.opencontainers.image.licenses="Apache-2.0" \ | ||||||
|       org.opencontainers.image.documentation="" \ |       org.opencontainers.image.documentation="" \ | ||||||
|       org.opencontainers.image.ref.name="" \ |       org.opencontainers.image.ref.name="" \ | ||||||
|  |  | ||||||
|  | @ -15,33 +15,35 @@ services: | ||||||
|         #         CREATED: |         #         CREATED: | ||||||
|         #         VERSION: |         #         VERSION: | ||||||
|         #         LOCAL: 'false' |         #         LOCAL: 'false' | ||||||
|         #         GIT_REF: HEAD |         #         GIT_REF: origin/master | ||||||
|         restart: unless-stopped |         restart: unless-stopped | ||||||
|         ports: |         ports: | ||||||
|             - 8448:8000 |             - 8448:8000 | ||||||
|         volumes: |         volumes: | ||||||
|             - db:/srv/conduit/.local/share/conduit |             - db:/srv/conduit/.local/share/conduit | ||||||
|             ### Uncomment if you want to use Rocket.toml to configure Conduit |             ### Uncomment if you want to use conduit.toml to configure Conduit | ||||||
|             ### Note: Set env vars will override Rocket.toml values |             ### Note: Set env vars will override conduit.toml values | ||||||
|             # - ./Rocket.toml:/srv/conduit/Rocket.toml |             # - ./conduit.toml:/srv/conduit/conduit.toml | ||||||
|         environment: |         environment: | ||||||
|             ROCKET_SERVER_NAME: localhost:8000  # replace with your own name |             CONDUIT_SERVER_NAME: localhost:8000  # replace with your own name | ||||||
|             ### Uncomment and change values as desired |             ### Uncomment and change values as desired | ||||||
|             # ROCKET_LOG: normal  # Available levels are: off, debug, normal, critical |             # CONDUIT_ADDRESS: 127.0.0.1 | ||||||
|             # ROCKET_PORT: 8000 |             # CONDUIT_PORT: 8000 | ||||||
|             # ROCKET_REGISTRATION_DISABLED: 'true' |             # CONDUIT_LOG: normal  # Available levels are: off, debug, normal, critical | ||||||
|             # ROCKET_ENCRYPTION_DISABLED: 'true' |             # CONDUIT_ALLOW_JAEGER: 'false' | ||||||
|             # ROCKET_FEDERATION_ENABLED: 'true' |             # CONDUIT_ALLOW_REGISTRATION : 'false' | ||||||
|             # ROCKET_DATABASE_PATH: /srv/conduit/.local/share/conduit |             # CONDUIT_ALLOW_ENCRYPTION: 'false' | ||||||
|             # ROCKET_WORKERS: 10 |             # CONDUIT_ALLOW_FEDERATION: 'false' | ||||||
|             # ROCKET_MAX_REQUEST_SIZE: 20_000_000  # in bytes, ~20 MB |             # CONDUIT_DATABASE_PATH: /srv/conduit/.local/share/conduit | ||||||
|  |             # CONDUIT_WORKERS: 10 | ||||||
|  |             # CONDUIT_MAX_REQUEST_SIZE: 20_000_000  # in bytes, ~20 MB | ||||||
| 
 | 
 | ||||||
|     ### Uncomment if you want to use your own Element-Web App. |     ### Uncomment if you want to use your own Element-Web App. | ||||||
|     ### Note: You need to provide a config.json for Element and you also need a second |     ### Note: You need to provide a config.json for Element and you also need a second | ||||||
|     ###       Domain or Subdomain for the communication between Element and Conduit |     ###       Domain or Subdomain for the communication between Element and Conduit | ||||||
|     ### Config-Docs: https://github.com/vector-im/element-web/blob/develop/docs/config.md |     ### Config-Docs: https://github.com/vector-im/element-web/blob/develop/docs/config.md | ||||||
|     # element-web: |     # element-web: | ||||||
|     #     image: vectorim/riot-web:latest |     #     image: vectorim/element-web:latest | ||||||
|     #     restart: unless-stopped |     #     restart: unless-stopped | ||||||
|     #     ports: |     #     ports: | ||||||
|     #         - 8009:80 |     #         - 8009:80 | ||||||
|  |  | ||||||
|  | @ -17,13 +17,13 @@ The Dockerfile includes a few build arguments that should be supplied when build | ||||||
| ARG LOCAL=false | ARG LOCAL=false | ||||||
| ARG CREATED | ARG CREATED | ||||||
| ARG VERSION | ARG VERSION | ||||||
| ARG GIT_REF=HEAD | ARG GIT_REF=origin/master | ||||||
| ``` | ``` | ||||||
| 
 | 
 | ||||||
| - **CREATED:** Date and time as string (date-time as defined by RFC 3339). Will be used to create the Open Container Initiative compliant label `org.opencontainers.image.created`. Supply by it like this `$(date -u +'%Y-%m-%dT%H:%M:%SZ')` | - **CREATED:** Date and time as string (date-time as defined by RFC 3339). Will be used to create the Open Container Initiative compliant label `org.opencontainers.image.created`. Supply by it like this `$(date -u +'%Y-%m-%dT%H:%M:%SZ')` | ||||||
| - **VERSION:** The SemVer version of Conduit, which is in the image. Will be used to create the Open Container Initiative compliant label `org.opencontainers.image.version`. If you have a `Cargo.toml` in your build context, you can get it with `$(grep -m1 -o '[0-9].[0-9].[0-9]' Cargo.toml)` | - **VERSION:** The SemVer version of Conduit, which is in the image. Will be used to create the Open Container Initiative compliant label `org.opencontainers.image.version`. If you have a `Cargo.toml` in your build context, you can get it with `$(grep -m1 -o '[0-9].[0-9].[0-9]' Cargo.toml)` | ||||||
| - **LOCAL:** *(Optional)* A boolean value, specifies if the local build context should be used, or if the official repository will be cloned. If not supplied with the build command, it will default to `false`. | - **LOCAL:** *(Optional)* A boolean value, specifies if the local build context should be used, or if the official repository will be cloned. If not supplied with the build command, it will default to `false`. | ||||||
| - **GIT_REF:** *(Optional)* A git ref, like `HEAD` or a commit ID. The supplied ref will be used to create the Open Container Initiative compliant label `org.opencontainers.image.revision` and will be the ref that is cloned from the repository when not building from the local context. If not supplied with the build command, it will default to `HEAD`. | - **GIT_REF:** *(Optional)* A git ref, like `HEAD` or a commit ID. The supplied ref will be used to create the Open Container Initiative compliant label `org.opencontainers.image.revision` and will be the ref that is cloned from the repository when not building from the local context. If not supplied with the build command, it will default to `origin/master`. | ||||||
| 
 | 
 | ||||||
| To build the image you can use the following command | To build the image you can use the following command | ||||||
| 
 | 
 | ||||||
|  | @ -40,7 +40,7 @@ which also will tag the resulting image as `matrixconduit/matrix-conduit:latest` | ||||||
| After building the image you can simply run it with | After building the image you can simply run it with | ||||||
| 
 | 
 | ||||||
| ``` bash | ``` bash | ||||||
| docker run -d -p 8448:8000 -v db:/srv/conduit/.local/share/conduit -e ROCKET_SERVER_NAME="localhost:8000" matrixconduit/matrix-conduit:latest | docker run -d -p 8448:8000 -v db:/srv/conduit/.local/share/conduit -e CONDUIT_SERVER_NAME="localhost:8000" matrixconduit/matrix-conduit:latest | ||||||
| ``` | ``` | ||||||
| 
 | 
 | ||||||
| For detached mode, you also need to use the `-d` flag. You can pass in more env vars as are shown here, for an overview of possible values, you can take a look at the `docker-compose.yml` file. | For detached mode, you also need to use the `-d` flag. You can pass in more env vars as are shown here, for an overview of possible values, you can take a look at the `docker-compose.yml` file. | ||||||
|  |  | ||||||
|  | @ -15,32 +15,35 @@ services: | ||||||
|         #         CREATED: |         #         CREATED: | ||||||
|         #         VERSION: |         #         VERSION: | ||||||
|         #         LOCAL: 'false' |         #         LOCAL: 'false' | ||||||
|         #         GIT_REF: HEAD |         #         GIT_REF: origin/master | ||||||
|         restart: unless-stopped |         restart: unless-stopped | ||||||
|         volumes: |         volumes: | ||||||
|             - db:/srv/conduit/.local/share/conduit |             - db:/srv/conduit/.local/share/conduit | ||||||
|             ### Uncomment if you want to use Rocket.toml to configure Conduit |             ### Uncomment if you want to use conduit.toml to configure Conduit | ||||||
|             ### Note: Set env vars will override Rocket.toml values |             ### Note: Set env vars will override conduit.toml values | ||||||
|             # - ./Rocket.toml:/srv/conduit/Rocket.toml |             # - ./conduit.toml:/srv/conduit/conduit.toml | ||||||
|         networks: |         networks: | ||||||
|             - proxy |             - proxy | ||||||
|         environment: |         environment: | ||||||
|             ROCKET_SERVER_NAME: localhost:8000  # replace with your own name |             ROCKET_SERVER_NAME: localhost:8000  # replace with your own name | ||||||
|             ### Uncomment and change values as desired |             ### Uncomment and change values as desired | ||||||
|             # ROCKET_LOG: normal  # Available levels are: off, debug, normal, critical |             # CONDUIT_ADDRESS: 127.0.0.1 | ||||||
|             # ROCKET_PORT: 8000 |             # CONDUIT_PORT: 8000 | ||||||
|             # ROCKET_REGISTRATION_DISABLED: 'true' |             # CONDUIT_LOG: normal  # Available levels are: off, debug, normal, critical | ||||||
|             # ROCKET_ENCRYPTION_DISABLED: 'true' |             # CONDUIT_ALLOW_JAEGER: 'false' | ||||||
|             # ROCKET_DATABASE_PATH: /srv/conduit/.local/share/conduit |             # CONDUIT_ALLOW_REGISTRATION : 'false' | ||||||
|             # ROCKET_WORKERS: 10 |             # CONDUIT_ALLOW_ENCRYPTION: 'false' | ||||||
|             # ROCKET_MAX_REQUEST_SIZE: 20_000_000  # in bytes, ~20 MB |             # CONDUIT_ALLOW_FEDERATION: 'false' | ||||||
|  |             # CONDUIT_DATABASE_PATH: /srv/conduit/.local/share/conduit | ||||||
|  |             # CONDUIT_WORKERS: 10 | ||||||
|  |             # CONDUIT_MAX_REQUEST_SIZE: 20_000_000  # in bytes, ~20 MB | ||||||
| 
 | 
 | ||||||
|     ### Uncomment if you want to use your own Element-Web App. |     ### Uncomment if you want to use your own Element-Web App. | ||||||
|     ### Note: You need to provide a config.json for Element and you also need a second |     ### Note: You need to provide a config.json for Element and you also need a second | ||||||
|     ###       Domain or Subdomain for the communication between Element and Conduit |     ###       Domain or Subdomain for the communication between Element and Conduit | ||||||
|     ### Config-Docs: https://github.com/vector-im/element-web/blob/develop/docs/config.md |     ### Config-Docs: https://github.com/vector-im/element-web/blob/develop/docs/config.md | ||||||
|     # element-web: |     # element-web: | ||||||
|     #     image: vectorim/riot-web:latest |     #     image: vectorim/element-web:latest | ||||||
|     #     restart: unless-stopped |     #     restart: unless-stopped | ||||||
|     #     volumes: |     #     volumes: | ||||||
|     #         - ./element_config.json:/app/config.json |     #         - ./element_config.json:/app/config.json | ||||||
|  |  | ||||||
		Loading…
	
		Reference in a new issue