github / github/pages-gem

Feature request: link this repository to dockerhub

Aperta
#645 2 commenti 4 reazioni 0 assegnatari Vedi su GitHub
Lingua principale
Ruby
Stelle
1.9k
Fork
360
Metriche di merge delle PR
Nessuna PR unita negli ultimi 30g

Descrizione

Until today, I have been using any of the many github-pages images out there. Today however, I encountered a bug in the latest versions, and I was trying to find where it came from. The bug is still there (something with an {% else %} not being recognised), and already reported, but while looking I also stumbled on this pages-gem repository, and saw the Dockerfile in there. This means there is an official docker image I can use. But it seems this repository is not yet linked to a dockerhub organisation. Would it be possible to link a dockerhub "github" organisation to this repository, so we could always have an up-to-date docker image on dockerhub?

Right now, I have forked this repository, to try and see if it was possible to use the repository as is in dockerhub. And yes, it takes only a few minutes to set up, but once it's there, it's free, needs no maintenance, and will automatically build a new image based on the latest tag, starting with the next tag you'll add to this repository. The setup I use:
```
Source repository: phpqa/pages-gem
Build rule 1:
Source type: tag
Source: /^(v[0-9.]+)$/
Docker Tag: {\1}
Dockerfile location: Dockerfile
Build Context (only available on edit): /
Autobuild: true
Build caching: true
Build rule 2:
Source type: tag
Source: /^(v[0-9.]+)$/
Docker Tag: {\1}-alpine
Dockerfile location: Dockerfile.alpine
Build Context (only available on edit): /
Autobuild: true
Build caching: true
```

This will build a docker image every time a new tag is added to the github repository. You can see the example at https://hub.docker.com/r/phpqa/github-pages-gem based on https://github.com/phpqa/pages-gem/releases/tag/v199

I use it with the following `docker-compose.yml` file, that will serve your site with a `docker-compose up -d` to `0.0.0.0:4000` (on a Mac, as there is a $PWD in there):
```
version: '3.7'

volumes:

website:
driver: local
driver_opts:
o: bind
type: none
device: $PWD/

services:
jekyll:
image: phpqa/github-pages-gem:v199
command: jekyll serve -H 0.0.0.0 -P 4000 --watch --force_polling --verbose
ports:
- target: 4000
published: 4000
protocol: tcp
mode: host
volumes:
- type: volume
source: website
target: /src/site
volume:
nocopy: true
```

You could also add some build hooks to also add a latest tag, but that would only be an improvement.

Guida per i contributori

Apri la guida per i contributori

Direzione di ricerca

Esamina Dockerfile e Dockerfile.alpine, quindi controlla le regole di build proposte di Docker Hub per i tag di versione. Conferma che il repository possa essere collegato all’organizzazione Docker Hub richiesta e che entrambi i Dockerfile vengano compilati automaticamente a partire da nuovi tag con prefisso v; l’attività è completata quando le immagini ufficiali sono disponibili per quei tag.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Valutazione

Stack tecnologico
docker
Ambito
devops, infrastructure
Tipo di issue
Funzionalità
Difficoltà
2/5
Tempo stimato
1-3 ore
Stato di attività
Ferma
Chiarezza
Abbastanza chiara
Idoneità per principianti
25/100

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.