mirror of
https://github.com/woodpecker-ci/woodpecker.git
synced 2024-06-12 18:39:33 +00:00
91 lines
2.7 KiB
Markdown
91 lines
2.7 KiB
Markdown
|
# Server configuration
|
||
|
|
||
|
## User registration
|
||
|
|
||
|
Registration is closed by default.
|
||
|
|
||
|
This example enables open registration for users that are members of approved GitHub organizations.
|
||
|
|
||
|
```diff
|
||
|
services:
|
||
|
woodpecker-server:
|
||
|
image: woodpeckerci/woodpecker-server:latest
|
||
|
environment:
|
||
|
+ - WOODPECKER_OPEN=true
|
||
|
+ - WOODPECKER_ORGS=dolores,dogpatch
|
||
|
- WOODPECKER_HOST=${WOODPECKER_HOST}
|
||
|
- WOODPECKER_GITHUB=true
|
||
|
- WOODPECKER_GITHUB_CLIENT=${WOODPECKER_GITHUB_CLIENT}
|
||
|
- WOODPECKER_GITHUB_SECRET=${WOODPECKER_GITHUB_SECRET}
|
||
|
- WOODPECKER_SECRET=${WOODPECKER_SECRET}
|
||
|
```
|
||
|
|
||
|
## Administrators
|
||
|
|
||
|
Administrators should also be enumerated in your configuration.
|
||
|
|
||
|
```diff
|
||
|
services:
|
||
|
woodpecker-server:
|
||
|
image: woodpeckerci/woodpecker-server:latest
|
||
|
environment:
|
||
|
- WOODPECKER_OPEN=true
|
||
|
- WOODPECKER_ORGS=dolores,dogpatch
|
||
|
+ - WOODPECKER_ADMIN=johnsmith,janedoe
|
||
|
- WOODPECKER_HOST=${WOODPECKER_HOST}
|
||
|
- WOODPECKER_GITHUB=true
|
||
|
- WOODPECKER_GITHUB_CLIENT=${WOODPECKER_GITHUB_CLIENT}
|
||
|
- WOODPECKER_GITHUB_SECRET=${WOODPECKER_GITHUB_SECRET}
|
||
|
- WOODPECKER_SECRET=${WOODPECKER_SECRET}
|
||
|
```
|
||
|
|
||
|
|
||
|
## Filtering repositories
|
||
|
|
||
|
Woodpecker operates with the user's OAuth permission. Due to the coarse permission handling of GitHub, you may end up syncing more repos into Woodpecker than preferred.
|
||
|
|
||
|
Use the `WOODPECKER_REPO_OWNERS` variable to filter which GitHub user's repos should be synced only. You typically want to put here your company's GitHub name.
|
||
|
|
||
|
```diff
|
||
|
services:
|
||
|
woodpecker-server:
|
||
|
image: woodpeckerci/woodpecker-server:latest
|
||
|
environment:
|
||
|
- WOODPECKER_OPEN=true
|
||
|
- WOODPECKER_ORGS=dolores,dogpatch
|
||
|
+ - WOODPECKER_REPO_OWNERS=mycompany,mycompanyossgithubuser
|
||
|
- WOODPECKER_HOST=${WOODPECKER_HOST}
|
||
|
- WOODPECKER_GITHUB=true
|
||
|
- WOODPECKER_GITHUB_CLIENT=${WOODPECKER_GITHUB_CLIENT}
|
||
|
- WOODPECKER_GITHUB_SECRET=${WOODPECKER_GITHUB_SECRET}
|
||
|
- WOODPECKER_SECRET=${WOODPECKER_SECRET}
|
||
|
```
|
||
|
|
||
|
## Global registry setting
|
||
|
|
||
|
If you want to make available a specific private registry to all pipelines, use the `WOODPECKER_DOCKER_CONFIG` server configuration.
|
||
|
Point it to your server's docker config.
|
||
|
|
||
|
```diff
|
||
|
# docker-compose.yml
|
||
|
version: '3'
|
||
|
|
||
|
services:
|
||
|
woodpecker-server:
|
||
|
image: woodpeckerci/woodpecker-server:latest
|
||
|
ports:
|
||
|
- 80:8000
|
||
|
- 9000
|
||
|
volumes:
|
||
|
- woodpecker-server-data:/var/lib/drone/
|
||
|
restart: always
|
||
|
environment:
|
||
|
- WOODPECKER_OPEN=true
|
||
|
- WOODPECKER_HOST=${WOODPECKER_HOST}
|
||
|
- WOODPECKER_GITHUB=true
|
||
|
- WOODPECKER_GITHUB_CLIENT=${WOODPECKER_GITHUB_CLIENT}
|
||
|
- WOODPECKER_GITHUB_SECRET=${WOODPECKER_GITHUB_SECRET}
|
||
|
- WOODPECKER_SECRET=${WOODPECKER_SECRET}
|
||
|
+ - WOODPECKER_DOCKER_CONFIG=/home/user/.docker/config.json
|
||
|
```
|