Docker


I nostri Representer vengono rilasciati come immagini Docker.

Leggi le informazioni generali su Docker per gli strumenti per familiarizzare con il loro funzionamento.

Integrazione

Quando eseguiamo un Representer per creare la rappresentazione di una soluzione, eseguiamo un comando Docker simile a questo:

docker run \
        --rm \
        --network none \
        --mount type=bind,src="${solution_dir}",dst=/solution \
        --mount type=bind,src="${output_dir}",dst=/output \
        --tmpfs /tmp:rw \
        "exercism/${track_slug}-representer" \
        "${exercise_slug}" "/solution" "/output"

Come puoi vedere, passiamo tre argomenti all'immagine Docker:

  1. Lo slug dell'esercizio
  2. Il percorso della directory della soluzione
  3. Il percorso della directory di output

Convenzioni

Tutti i nostri Representer seguono queste convenzioni nella loro implementazione:

  • Il Dockerfile si trova nella directory radice del repository.
  • La directory di lavoro dovrebbe essere /opt/representer.
  • L'entrypoint è /opt/representer/bin/run.sh
  • Lo script /opt/representer/bin/run.sh accetta 3 argomenti:
    1. Lo slug dell'esercizio
    2. Il percorso della directory della soluzione
    3. Il percorso della directory di output

Per ulteriori informazioni, vedi L'interfaccia.

Note

I nuovi repository dei representer useranno queste convenzioni per impostazione predefinita.