Git repo stavať URL s Docker komponovať

0

Otázka

Snažím sa používať git repo URL v mojom docker-compose.yml súbor, ako je popísané tu. Služby vyzerá takto:

  app:
    build: "https://[MY_GITHUB_OAUTH_TOKEN]@github.com/org/repo.git#develop"

Som dostať nasledujúce chybové hlásenie:

$ docker-compose up
[+] Running 0/1
 ⠿ app Error                                                                   0.5s
[+] Building 0.0s (1/1) FINISHED                                                    
 => CACHED [internal] load git source https://[MY_GITHUB_OAUTH_TOKEN]  0.0s
failed to solve: rpc error: code = Unknown desc = failed to solve with frontend dockerfile.v0: failed to read dockerfile: open /var/lib/docker/tmp/buildkit-mount730635615/https:/[MY_GITHUB_OAUTH_TOKEN]@github.com/org/repo.git#develop/Dockerfile: no such file or directory

ALE, keď som skopírujte presnej adresy URL z mojej docker-compose.yml súbor, môžem ho použiť s Docker budovať úspešne. Vidím všetky kroky Dockerfile vykonávaný.

$ docker build https://[MY_GITHUB_OAUTH_TOKEN]@github.com/org/repo.git#develop

Tam je develop pobočka, [MY_GITHUB_OAUTH_TOKEN] je môj skutočný GitHub token, a nie je platný Dockerfile (s veľkým D) v repo koreň. Prečo by táto práca s docker build ale nie docker-compose? To nemôže byť problém s token, pretože to funguje s docker build.

Ak je to dôležité, ja som na M1 Mac s Docker pre Mac nainštalovaný. docker-compose je v poriadku s inými službami.

docker docker-compose dockerfile git
2021-11-23 21:23:34
1

Najlepšiu odpoveď

0

Skúste# - odstránenie úvodzoviek

  app:
    build: https://[MY_GITHUB_OAUTH_TOKEN]@github.com/org/repo.git#develop

alebo to s alebo bez úvodzoviek

  app:
    build:
      context: https://[MY_GITHUB_OAUTH_TOKEN]@github.com/org/repo.git#develop

alebo to s alebo bez úvodzoviek

  app:
    build:
      context: https://[MY_GITHUB_OAUTH_TOKEN]@github.com/org/repo.git#develop
      dockerfile: Dockerfile
2021-11-28 04:50:47

Vďaka za odpoveď. Rovnakú chybu ako v pošte so všetkými 3 bohužiaľ.
Jacob Stein

Ako sa o nasledujúce: 1) nainštalujte ssh na váš kontajner ako súčasť docker stavať, 2) nastavenie ssh povolenia medzi Mac a git repo, 3), ako súčasť vášho docker napísať nakonfigurovať na mount adresár, kde ssh id_rsa tlačidlo bydlisko, ako zväzku s kontajnerov ssh dir, 4) použitie "[email protected]/org/repo.git#develop" ako vybudovať vaše config. Týmto spôsobom môžeme seee ak je problém s docker napísať / mac / git konfigurácia, alebo či to súvisí s nástroji oauth token použitie s docker komponovať
djmonki

Bude robiť. Ja sa tiež spomenúť, keď som stačí použiť git clone https://[MY_GITHUB_OAUTH_TOKEN]@github.com/org/repo.git že funguje dobre, ale mám na SSH kľúč nastavenie môj Mac. Ak by som zmeniť token na niečo iné som si auth chyba (aj s SSH kľúč, GitHub preferuje za predpokladu, token). Rovnaká vec sa stane, ak sa snažím neplatný token s docker buildpreto si myslím , že to znamená, že kľúč musí byť v poriadku.
Jacob Stein

Snažil poskytovanie prístupu k ~/.ssh ako objem, - "~/.ssh:/root/ssh:ro" a docker build [email protected]:org/repo.git na moje lokálnom počítači, a daj mi toto: failed to solve with frontend dockerfile.v0: failed to read dockerfile: failed to load cache key: rpc error: code = Unimplemented desc = unknown service moby.sshforward.v1.SSH. Môžem git clone [email protected]:org/repo.git úspešne
Jacob Stein

Dostal nápad, vaše pomocou Docker Napísať v2, ktorý sa dodáva s Docker Ploche, zaujímalo by ma, je nová verzia je problém. Skúste docker-compose disable-v2 z cli, bude nútiť ju, aby používať v1. Zistite, či to funguje. Takisto môžete vypnúť prostredníctvom Docker Ploche. Vyberte položku Predvoľby=>Všeobecné a zrušiť začiarknutie " Použiť Docker Napísať V2
djmonki

V iných jazykoch

Táto stránka je v iných jazykoch

Русский
..................................................................................................................
Italiano
..................................................................................................................
Polski
..................................................................................................................
Română
..................................................................................................................
한국어
..................................................................................................................
हिन्दी
..................................................................................................................
Français
..................................................................................................................
Türk
..................................................................................................................
Česk
..................................................................................................................
Português
..................................................................................................................
ไทย
..................................................................................................................
中文
..................................................................................................................
Español
..................................................................................................................