5 Commits

Author SHA1 Message Date
f3f1750527 chore: add ghcr 2023-03-16 10:15:10 +01:00
30767b10c5 added WebSocket origin check 2023-02-17 10:18:14 +01:00
c6b17b0ee6 docs: update compose example 2022-12-08 13:14:05 +01:00
227c61f841 chore: update actions/cache to v3 2022-10-21 16:15:16 +02:00
27a158b32e chore: add more opencontainers labels 2022-10-15 16:08:11 +02:00
6 changed files with 62 additions and 19 deletions

View File

@ -32,7 +32,7 @@ jobs:
# https://github.com/marketplace/actions/cache # https://github.com/marketplace/actions/cache
- name: Cache Go modules - name: Cache Go modules
uses: actions/cache@v2 uses: actions/cache@v3
with: with:
path: ~/go/pkg/mod path: ~/go/pkg/mod
key: ${{ runner.os }}-go-${{ hashFiles('**/go.sum') }} key: ${{ runner.os }}-go-${{ hashFiles('**/go.sum') }}

View File

@ -31,7 +31,7 @@ jobs:
# https://github.com/marketplace/actions/cache # https://github.com/marketplace/actions/cache
- name: Cache Go modules - name: Cache Go modules
uses: actions/cache@v2 uses: actions/cache@v3
with: with:
# In order: # In order:
# * Module download cache # * Module download cache

View File

@ -26,12 +26,18 @@ jobs:
with: with:
fetch-depth: 0 fetch-depth: 0
- name: Docker Login - name: dockerhub-login
env: uses: docker/login-action@v1
DOCKER_USERNAME: ${{ secrets.DOCKER_USERNAME }} with:
DOCKER_PASSWORD: ${{ secrets.DOCKER_PASSWORD }} username: ${{ secrets.DOCKER_USERNAME }}
run: | password: ${{ secrets.DOCKER_PASSWORD }}
echo "${DOCKER_PASSWORD}" | docker login --username "${DOCKER_USERNAME}" --password-stdin
- name: ghcr-login
uses: docker/login-action@v1
with:
registry: ghcr.io
username: traefiker
password: ${{ secrets.GHCR_TOKEN }}
- name: Set up QEMU - name: Set up QEMU
uses: docker/setup-qemu-action@v2 uses: docker/setup-qemu-action@v2

View File

@ -51,6 +51,22 @@ docker_manifests:
- 'traefik/whoami:v{{ .Major }}.{{ .Minor }}-arm64' - 'traefik/whoami:v{{ .Major }}.{{ .Minor }}-arm64'
- 'traefik/whoami:v{{ .Major }}.{{ .Minor }}-armv7' - 'traefik/whoami:v{{ .Major }}.{{ .Minor }}-armv7'
- name_template: 'ghcr.io/traefik/whoami:{{ .Tag }}'
image_templates:
- 'ghcr.io/traefik/whoami:{{ .Tag }}-amd64'
- 'ghcr.io/traefik/whoami:{{ .Tag }}-arm64'
- 'ghcr.io/traefik/whoami:{{ .Tag }}-armv7'
- name_template: 'ghcr.io/traefik/whoami:latest'
image_templates:
- 'ghcr.io/traefik/whoami:{{ .Tag }}-amd64'
- 'ghcr.io/traefik/whoami:{{ .Tag }}-arm64'
- 'ghcr.io/traefik/whoami:{{ .Tag }}-armv7'
- name_template: 'ghcr.io/traefik/whoami:v{{ .Major }}.{{ .Minor }}'
image_templates:
- 'ghcr.io/traefik/whoami:v{{ .Major }}.{{ .Minor }}-amd64'
- 'ghcr.io/traefik/whoami:v{{ .Major }}.{{ .Minor }}-arm64'
- 'ghcr.io/traefik/whoami:v{{ .Major }}.{{ .Minor }}-armv7'
dockers: dockers:
- use: buildx - use: buildx
goos: linux goos: linux
@ -60,14 +76,20 @@ dockers:
- 'traefik/whoami:latest-amd64' - 'traefik/whoami:latest-amd64'
- 'traefik/whoami:{{ .Tag }}-amd64' - 'traefik/whoami:{{ .Tag }}-amd64'
- 'traefik/whoami:v{{ .Major }}.{{ .Minor }}-amd64' - 'traefik/whoami:v{{ .Major }}.{{ .Minor }}-amd64'
- 'ghcr.io/traefik/whoami:latest-amd64'
- 'ghcr.io/traefik/whoami:{{ .Tag }}-amd64'
- 'ghcr.io/traefik/whoami:v{{ .Major }}.{{ .Minor }}-amd64'
build_flag_templates: build_flag_templates:
- '--pull' - '--pull'
- '--label=org.opencontainers.image.description=Tiny Go webserver that prints OS information and HTTP request to output' # https://github.com/opencontainers/image-spec/blob/main/annotations.md#pre-defined-annotation-keys
- '--label=org.opencontainers.image.created={{.Date}}'
- '--label=org.opencontainers.image.title={{.ProjectName}}' - '--label=org.opencontainers.image.title={{.ProjectName}}'
- '--label=org.opencontainers.image.description=Tiny Go webserver that prints OS information and HTTP request to output'
- '--label=org.opencontainers.image.source={{.GitURL}}'
- '--label=org.opencontainers.image.url={{.GitURL}}'
- '--label=org.opencontainers.image.documentation={{.GitURL}}'
- '--label=org.opencontainers.image.created={{.Date}}'
- '--label=org.opencontainers.image.revision={{.FullCommit}}' - '--label=org.opencontainers.image.revision={{.FullCommit}}'
- '--label=org.opencontainers.image.version={{.Version}}' - '--label=org.opencontainers.image.version={{.Version}}'
- '--label=org.opencontainers.image.source={{.GitURL}}'
- '--platform=linux/amd64' - '--platform=linux/amd64'
- use: buildx - use: buildx
@ -78,14 +100,20 @@ dockers:
- 'traefik/whoami:latest-arm64' - 'traefik/whoami:latest-arm64'
- 'traefik/whoami:{{ .Tag }}-arm64' - 'traefik/whoami:{{ .Tag }}-arm64'
- 'traefik/whoami:v{{ .Major }}.{{ .Minor }}-arm64' - 'traefik/whoami:v{{ .Major }}.{{ .Minor }}-arm64'
- 'ghcr.io/traefik/whoami:latest-arm64'
- 'ghcr.io/traefik/whoami:{{ .Tag }}-arm64'
- 'ghcr.io/traefik/whoami:v{{ .Major }}.{{ .Minor }}-arm64'
build_flag_templates: build_flag_templates:
- '--pull' - '--pull'
- '--label=org.opencontainers.image.description=Tiny Go webserver that prints OS information and HTTP request to output' # https://github.com/opencontainers/image-spec/blob/main/annotations.md#pre-defined-annotation-keys
- '--label=org.opencontainers.image.created={{.Date}}'
- '--label=org.opencontainers.image.title={{.ProjectName}}' - '--label=org.opencontainers.image.title={{.ProjectName}}'
- '--label=org.opencontainers.image.description=Tiny Go webserver that prints OS information and HTTP request to output'
- '--label=org.opencontainers.image.source={{.GitURL}}'
- '--label=org.opencontainers.image.url={{.GitURL}}'
- '--label=org.opencontainers.image.documentation={{.GitURL}}'
- '--label=org.opencontainers.image.created={{.Date}}'
- '--label=org.opencontainers.image.revision={{.FullCommit}}' - '--label=org.opencontainers.image.revision={{.FullCommit}}'
- '--label=org.opencontainers.image.version={{.Version}}' - '--label=org.opencontainers.image.version={{.Version}}'
- '--label=org.opencontainers.image.source={{.GitURL}}'
- '--platform=linux/arm64' - '--platform=linux/arm64'
- use: buildx - use: buildx
@ -97,12 +125,18 @@ dockers:
- 'traefik/whoami:latest-armv7' - 'traefik/whoami:latest-armv7'
- 'traefik/whoami:{{ .Tag }}-armv7' - 'traefik/whoami:{{ .Tag }}-armv7'
- 'traefik/whoami:v{{ .Major }}.{{ .Minor }}-armv7' - 'traefik/whoami:v{{ .Major }}.{{ .Minor }}-armv7'
- 'ghcr.io/traefik/whoami:latest-armv7'
- 'ghcr.io/traefik/whoami:{{ .Tag }}-armv7'
- 'ghcr.io/traefik/whoami:v{{ .Major }}.{{ .Minor }}-armv7'
build_flag_templates: build_flag_templates:
- '--pull' - '--pull'
- '--label=org.opencontainers.image.description=Tiny Go webserver that prints OS information and HTTP request to output' # https://github.com/opencontainers/image-spec/blob/main/annotations.md#pre-defined-annotation-keys
- '--label=org.opencontainers.image.created={{.Date}}'
- '--label=org.opencontainers.image.title={{.ProjectName}}' - '--label=org.opencontainers.image.title={{.ProjectName}}'
- '--label=org.opencontainers.image.description=Tiny Go webserver that prints OS information and HTTP request to output'
- '--label=org.opencontainers.image.source={{.GitURL}}'
- '--label=org.opencontainers.image.url={{.GitURL}}'
- '--label=org.opencontainers.image.documentation={{.GitURL}}'
- '--label=org.opencontainers.image.created={{.Date}}'
- '--label=org.opencontainers.image.revision={{.FullCommit}}' - '--label=org.opencontainers.image.revision={{.FullCommit}}'
- '--label=org.opencontainers.image.version={{.Version}}' - '--label=org.opencontainers.image.version={{.Version}}'
- '--label=org.opencontainers.image.source={{.GitURL}}'
- '--platform=linux/arm/v7' - '--platform=linux/arm/v7'

View File

@ -104,6 +104,6 @@ services:
image: traefik/whoami image: traefik/whoami
command: command:
# It tells whoami to start listening on 2001 instead of 80 # It tells whoami to start listening on 2001 instead of 80
- --port 2001 - --port=2001
- --name iamfoo - --name=iamfoo
``` ```

3
app.go
View File

@ -50,6 +50,9 @@ func init() {
var upgrader = websocket.Upgrader{ var upgrader = websocket.Upgrader{
ReadBufferSize: 1024, ReadBufferSize: 1024,
WriteBufferSize: 1024, WriteBufferSize: 1024,
CheckOrigin: func(r *http.Request) bool {
return true
},
} }
func main() { func main() {