mirror of https://github.com/h44z/wg-portal.git
				
				
				
			
		
			
				
	
	
		
			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
 | 
						|
```
 | 
						|
 |