mirror of
https://github.com/h44z/wg-portal.git
synced 2025-04-19 08:55:12 +00:00
82 lines
2.6 KiB
Markdown
82 lines
2.6 KiB
Markdown
|
## Image Usage
|
||
|
|
||
|
The preferred way to start WireGuard Portal as Docker container is to use Docker Compose.
|
||
|
|
||
|
A sample docker-compose.yml:
|
||
|
|
||
|
```yaml
|
||
|
version: '3.6'
|
||
|
services:
|
||
|
wg-portal:
|
||
|
image: wgportal/wg-portal:v2
|
||
|
restart: unless-stopped
|
||
|
cap_add:
|
||
|
- NET_ADMIN
|
||
|
network_mode: "host"
|
||
|
ports:
|
||
|
- "8888:8888"
|
||
|
volumes:
|
||
|
- /etc/wireguard:/etc/wireguard
|
||
|
- ./data:/app/data
|
||
|
- ./config:/app/config
|
||
|
```
|
||
|
|
||
|
By default, the webserver is listening on port **8888**.
|
||
|
|
||
|
Volumes for `/app/data` and `/app/config` should be used ensure data persistence across container restarts.
|
||
|
|
||
|
## Image Versioning
|
||
|
|
||
|
All images are hosted on Docker Hub at [https://hub.docker.com/r/wgportal/wg-portal](https://hub.docker.com/r/wgportal/wg-portal).
|
||
|
There are three types of tags in the repository:
|
||
|
|
||
|
#### Semantic versioned tags
|
||
|
For example, `1.0.19`.
|
||
|
|
||
|
These are official releases of WireGuard Portal. They correspond to the GitHub tags that we make, and you can see the release notes for them here: [https://github.com/h44z/wg-portal/releases](https://github.com/h44z/wg-portal/releases).
|
||
|
|
||
|
Once these tags show up in this repository, they will never change.
|
||
|
|
||
|
For production deployments of WireGuard Portal, we strongly recommend using one of these tags, e.g. **wgportal/wg-portal:1.0.19**, instead of the latest or canary tags.
|
||
|
|
||
|
If you only want to stay at the same major or major+minor version, use either `v[MAJOR]` or `[MAJOR].[MINOR]` tags. For example `v1` or `1.0`.
|
||
|
|
||
|
Version **1** is currently **stable**, version **2** is in **development**.
|
||
|
|
||
|
#### latest
|
||
|
This is the most recent build to master! It changes a lot and is very unstable.
|
||
|
|
||
|
We recommend that you don't use it except for development purposes.
|
||
|
|
||
|
#### Branch tags
|
||
|
For each commit in the master and the stable branch, a corresponding Docker image is build. These images use the `master` or `stable` tags.
|
||
|
|
||
|
|
||
|
|
||
|
## Configuration
|
||
|
You can configure WireGuard Portal using a yaml configuration file.
|
||
|
The filepath of the yaml configuration file defaults to `/app/config/config.yml`.
|
||
|
It is possible to override the configuration filepath using the environment variable **WG_PORTAL_CONFIG**.
|
||
|
|
||
|
By default, WireGuard Portal uses a SQLite database. The database is stored in `/app/data/sqlite.db`.
|
||
|
|
||
|
You should mount those directories as a volume:
|
||
|
- /app/data
|
||
|
- /app/config
|
||
|
|
||
|
### Configuration Options
|
||
|
All available YAML configuration options are available [here](https://github.com/h44z/wg-portal#configuration).
|
||
|
|
||
|
A very basic example:
|
||
|
|
||
|
```yaml
|
||
|
core:
|
||
|
admin_user: test@wg-portal.local
|
||
|
admin_password: secret
|
||
|
|
||
|
web:
|
||
|
external_url: http://localhost:8888
|
||
|
request_logging: true
|
||
|
```
|
||
|
|