IngleseFranceseSpagnolo

Ad


Favicon di OnWorks

docker-run - Online nel cloud

Esegui docker-run nel provider di hosting gratuito OnWorks su Ubuntu Online, Fedora Online, emulatore online Windows o emulatore online MAC OS

Questo è il comando docker-run che può essere eseguito nel provider di hosting gratuito OnWorks utilizzando una delle nostre molteplici workstation online gratuite come Ubuntu Online, Fedora Online, emulatore online Windows o emulatore online MAC OS

PROGRAMMA:

NOME


docker-run - Esegue un comando in un nuovo contenitore

SINOSSI


scaricatore di porto eseguire il [-a|--allegare[=[],--aggiungi-host[=[],--blkio-peso[=[BLKIO-PESO]]]
[--blkio-peso-dispositivo[=[],--cpu-condivisioni[=0,--cap-aggiungi[=[],--cap-drop[=[]]]
[--cgroup-genitore[=CGROUP-PERCORSO,--cidfile[=FILE CID,--cpu-periodo[=0,--quota-cpu[=0]]
[--cpuset-cpus[=CPUSET-CPU,--cpuset-mems[=CPUSET-MEMS,-d|--stacca]
[--stacca-tasti[=[],--dispositivo[=[],--dispositivo-leggi-bps[=[],--device-read-iops[=[]]]
[--dispositivo-scrittura-bps[=[],--device-write-iops[=[],--dns[=[],--dns-opz[=[]]]
[--dns-ricerca[=[],-e|--env[=[],--punto d'entrata[=PUNTO D'ENTRATA,--file-env[=[]]]
[--esporre[=[],--gruppo-aggiungi[=[],-h|--Nome host[=HOSTNAME,--Aiuto] [-i|--interattivo]
[--ip[=INDIRIZZO IPv4,--ip6[=INDIRIZZO IPv6,--ipc[=IPC,--isolamento[=difetto]]
[--memoria-kernel[=KERNEL-MEMORIA,-l|--etichetta[=[],--file-etichetta[=[],--collegamento[=[]]]
[--log-driver[=[],--log-opz[=[],-m|--memoria[=MEMORIA,--indirizzo MAC[=INDIRIZZO MAC]]
[--prenotazione-memoria[=MEMORIA-PRENOTAZIONE,--scambio di memoria[=LIMITE]]
[--memoria-swappiness[=SCAMBIO DI MEMORIA,--nome[=NOME,--netto[="ponte"]]
[--net-alias[=[],--oom-kill-disabilita] [--oom-punteggio-agg[=0,-P|--pubblica-tutto]
[-p|--pubblicare[=[],--pid[=[],--privilegiato] [--sola lettura] [--ricomincia[=RICOMINCIA,--rm]
[--opt-sicurezza[=[],--segnale-stop[=SEGNALE,--shm-dimensione[=[],--sig-proxy[=vero]]
[-t|--tty] [--tmpfs[=[CONTENITORE-DIR[: ],-u|--utente[=UTENTE,--ulimit[=[]]]
[--uts[=[],-v|--volume[=[[HOST-DIR:]CONTENITORE-DIR[:OPZIONI]]]]
[--driver-volume[=DRIVER,--volumi-da[=[],-w|--dir.lavoro[=DIR.LAVORO]] IMMAGINE [COMANDO]
[ARGO...]

DESCRIZIONE


Esegui un processo in un nuovo contenitore. scaricatore di porto eseguire il avvia un processo con il proprio file system,
la propria rete e il proprio albero di processo isolato. L'IMMAGINE che avvia il processo
può definire i valori predefiniti relativi al processo che verrà eseguito nel contenitore, il
networking per esporre e altro ancora, ma scaricatore di porto eseguire il dà il controllo finale all'operatore o
amministratore che avvia il contenitore dall'immagine. Per tale motivo scaricatore di porto eseguire il ha di più
opzioni rispetto a qualsiasi altro comando Docker.

Se l'IMMAGINE non è già caricata, allora scaricatore di porto eseguire il tirerà l'IMMAGINE e tutta l'immagine
dipendenze, dal repository allo stesso modo in esecuzione scaricatore di porto tirare IMMAGINE, prima di esso
avvia il contenitore da quell'immagine.

VERSIONI


-a, --allegare= []
Collega a STDIN, STDOUT o STDERR.

In modalità primo piano (l'impostazione predefinita quando -d non è specificato), scaricatore di porto eseguire il può avviare il file
processo nel contenitore e collegare la console allo standard input, output,
ed errore standard. Può anche fingere di essere un TTY (questo è ciò che la maggior parte delle righe di comando
gli eseguibili si aspettano) e passano i segnali. Il -a l'opzione può essere impostata per ciascuno degli stdin,
stdout e stderr.

--aggiungi-host= []
Aggiungi una mappatura host-to-IP personalizzata (host:ip)

Aggiungi una riga a /etc/hosts. Il formato è hostname:ip. Il --aggiungi-host l'opzione può essere impostata
più volte.

--blkio-peso=0
Il peso I/O del blocco (peso relativo) accetta un valore di peso compreso tra 10 e 1000.

--blkio-peso-dispositivo= []
Peso blocco I/O (peso relativo del dispositivo, formato: DEVICE_NAME:PESO).

--cpu-condivisioni=0
Condivisioni CPU (peso relativo)

Per impostazione predefinita, tutti i contenitori ottengono la stessa proporzione di cicli CPU. Questa proporzione può essere
modificato modificando la ponderazione della condivisione della CPU del contenitore rispetto alla ponderazione di all
altri contenitori in esecuzione.

Per modificare la proporzione dal valore predefinito di 1024, utilizzare il --cpu-condivisioni flag per impostare il
ponderazione pari a 2 o superiore.

La proporzione verrà applicata solo quando sono in esecuzione processi a uso intensivo della CPU. Quando le attività in
un contenitore è inattivo, altri contenitori possono utilizzare il tempo CPU rimanente. L'importo effettivo
del tempo della CPU varierà a seconda del numero di contenitori in esecuzione sul sistema.

Ad esempio, considera tre contenitori, uno ha una quota di CPU di 1024 e altri due hanno a
impostazione cpu-share di 512. Quando i processi in tutti e tre i contenitori tentano di utilizzare il 100% di
CPU, il primo contenitore riceverà il 50% del tempo totale della CPU. Se aggiungi un quarto
contenitore con una quota di CPU di 1024, il primo contenitore ottiene solo il 33% della CPU. Il
i contenitori rimanenti ricevono il 16.5%, il 16.5% e il 33% della CPU.

Su un sistema multi-core, le condivisioni del tempo della CPU sono distribuite su tutti i core della CPU. Anche se
un contenitore è limitato a meno del 100% del tempo della CPU, può utilizzare il 100% di ogni individuo
nucleo della CPU.

Ad esempio, considera un sistema con più di tre core. Se avvii un contenitore {C0}
con -c=512 eseguire un processo e un altro contenitore {C1} con -c=1024 correre in due
processi, ciò può comportare la seguente divisione delle condivisioni CPU:

Contenitore PID Condivisione CPU CPU
100 {C0} 0 100% della CPU0
101 {C1} 1 100% della CPU1
102 {C1} 2 100% della CPU2

--cap-aggiungi= []
Aggiungi funzionalità Linux

--cap-drop= []
Elimina le funzionalità di Linux

--cgroup-genitore=""
Percorso ai cgroup in cui verrà creato il cgroup per il contenitore. Se il percorso
non è assoluto, il percorso è considerato relativo al percorso cgroups dell'init
processi. I Cgroup verranno creati se non esistono già.

--cidfile=""
Scrivi l'ID del contenitore nel file

--cpu-periodo=0
Limita il periodo CFS (Completely Fair Scheduler) della CPU

Limita l'utilizzo della CPU del contenitore. Questo flag dice al kernel di limitare la CPU del contenitore
utilizzo per il periodo specificato.

--cpuset-cpus=""
CPU in cui consentire l'esecuzione (0-3, 0,1)

--cpuset-mems=""
Nodi di memoria (MEM) in cui consentire l'esecuzione (0-3, 0,1). Efficace solo su NUMA
sistemi.

Se hai quattro nodi di memoria sul tuo sistema (0-3), usa --cpuset-mems=0,1 quindi processi
nel tuo contenitore Docker utilizzerà solo la memoria dei primi due nodi di memoria.

--quota-cpu=0
Limita la quota CFS (Completely Fair Scheduler) della CPU

Limita l'utilizzo della CPU del contenitore. Per impostazione predefinita, i contenitori vengono eseguiti con la risorsa CPU completa.
Questo flag dice al kernel di limitare l'utilizzo della CPU del contenitore alla quota specificata.

-d, --stacca=vero|falso
Modalità distaccata: esegui il contenitore in background e stampa il nuovo ID contenitore. Il
l'impostazione predefinita è falso.

In qualsiasi momento puoi correre scaricatore di porto ps nell'altra shell per visualizzare un elenco dell'esecuzione
contenitori. Puoi riattaccarlo a un contenitore staccato con scaricatore di porto allegare. Se si sceglie di
eseguire un contenitore in modalità scollegata, quindi non è possibile utilizzare il -rm opzione.

Quando è collegato in modalità tty, puoi staccarlo dal contenitore (e lasciarlo in esecuzione)
utilizzando una sequenza di tasti configurabile. La sequenza predefinita è CTRL-pag CTRL-q. Tu configuri
la sequenza di tasti utilizzando il --stacca-tasti opzione o un file di configurazione. Vedere
config-json(5) per la documentazione sull'utilizzo di un file di configurazione.

--stacca-tasti=""
Sostituisci la sequenza di tasti per scollegare un contenitore. Il formato è un singolo carattere [aZ]
or Ctrl- where è uno di: az, @, ^, [, , or _.

--dispositivo= []
Aggiungi un dispositivo host al contenitore (es. --device=/dev/sdc:/dev/xvdc:rwm)

--dispositivo-leggi-bps= []
Limita la velocità di lettura da un dispositivo (es. --device-read-bps=/dev/sda:1mb)

--device-read-iops= []
Limita la velocità di lettura da un dispositivo (es. --device-read-iops=/dev/sda:1000)

--dispositivo-scrittura-bps= []
Limita la velocità di scrittura su un dispositivo (es. --device-write-bps=/dev/sda:1mb)

--device-write-iops= []
Limita la velocità di scrittura a un dispositivo (es. --device-write-iops=/dev/sda:1000)

--dns-ricerca= []
Imposta domini di ricerca DNS personalizzati (usa --dns-search=. se non desideri impostare la ricerca
dominio)

--dns-opz= []
Imposta opzioni DNS personalizzate

--dns= []
Imposta server DNS personalizzati

Questa opzione può essere utilizzata per sovrascrivere la configurazione DNS passata al contenitore.
In genere questo è necessario quando la configurazione DNS dell'host non è valida per il contenitore
(ad es. 127.0.0.1). Quando questo è il caso il --dns flag è necessario per ogni esecuzione.

-e, --env= []
Imposta variabili d'ambiente

Questa opzione ti permette di specificare variabili d'ambiente arbitrarie che sono disponibili per
il processo che verrà avviato all'interno del contenitore.

--punto d'entrata=""
Sovrascrivi l'ENTRYPOINT predefinito dell'immagine

Questa opzione ti permette di sovrascrivere il punto di ingresso predefinito dell'immagine che è impostato nel
Dockerfile. L'ENTRYPOINT di un'immagine è simile a un COMANDO perché specifica cosa
eseguibile da eseguire all'avvio del contenitore, ma è (volutamente) più difficile da eseguire
oltrepassare. L'ENTRYPOINT dà a un contenitore la sua natura o comportamento predefinito, in modo che quando
imposti un ENTRYPOINT puoi eseguire il contenitore come se fosse quel binario, completo di
opzioni predefinite e puoi passare più opzioni tramite il COMANDO. Ma, a volte e
l'operatore potrebbe voler eseguire qualcos'altro all'interno del contenitore, in modo da poter sovrascrivere il
ENTRYPOINT predefinito in fase di esecuzione utilizzando a --punto d'entrata e una stringa per specificare il nuovo
PUNTO D'ENTRATA.

--file-env= []
Leggi in un file delimitato da una riga di variabili d'ambiente

--esporre= []
Esporre una porta o un intervallo di porte (ad es. --expose=3300-3310) informa Docker che il
container è in ascolto sulle porte di rete specificate in fase di esecuzione. Docker utilizza queste informazioni
per interconnettere i contenitori utilizzando collegamenti e per impostare il reindirizzamento delle porte sul sistema host.

--gruppo-aggiungi= []
Aggiungi altri gruppi da eseguire come

-h, --Nome host=""
Nome host contenitore

Imposta il nome host del contenitore disponibile all'interno del contenitore.

--Aiuto
Stampa dichiarazione di utilizzo

-i, --interattivo=vero|falso
Tieni aperto STDIN anche se non è collegato. L'impostazione predefinita è falso.

Se impostato su true, mantieni stdin aperto anche se non è collegato. L'impostazione predefinita è false.

--ip=""
Imposta l'indirizzo IPv4 dell'interfaccia del contenitore (es. 172.23.0.9)

Può essere utilizzato solo in combinazione con --netto per reti definite dall'utente

--ip6=""
Imposta l'indirizzo IPv6 dell'interfaccia del contenitore (es. 2001:db8::1b99)

Può essere utilizzato solo in combinazione con --netto per reti definite dall'utente

--ipc=""
L'impostazione predefinita è creare uno spazio dei nomi IPC privato (POSIX SysV IPC) per il contenitore
'contenitore: ': riutilizza un altro contenitore condiviso
memoria, semafori e code di messaggi
'host': usa la memoria condivisa, i semafori e il messaggio dell'host
code all'interno del container. Nota: la modalità host fornisce al contenitore l'accesso completo a local
memoria condivisa ed è quindi considerato insicuro.

--isolamento="difetto"
Isolation specifica il tipo di tecnologia di isolamento utilizzata dai contenitori.

-l, --etichetta= []
Imposta i metadati sul contenitore (ad es. --label com.example.key=value)

--memoria-kernel=""
Limite di memoria del kernel (formato: [ ], dove unità = b, k, m o g)

Vincola la memoria del kernel disponibile per un contenitore. Se viene specificato un limite di 0 (non
utilizzando --memoria-kernel), la memoria del kernel del contenitore non è limitata. Se specifichi a
limite, può essere arrotondato per eccesso a un multiplo della dimensione della pagina del sistema operativo e il
il valore può essere molto grande, milioni di trilioni.

--file-etichetta= []
Leggi in un file di etichette delimitato da una riga

--collegamento= []
Aggiungi collegamento a un altro contenitore sotto forma di :alias o semplicemente in
nel qual caso l'alias corrisponderà al nome

Se l'operatore utilizza --collegamento quando si avvia il nuovo contenitore client, quindi il client
container può accedere alla porta esposta tramite un'interfaccia di rete privata. Docker verrà impostato
alcune variabili di ambiente nel contenitore del client per aiutare a indicare quale interfaccia e
porta da utilizzare.

--log-driver="json|syslog|diario|gelf|fluente|awslog|sputare|nessuna"
Driver di registrazione per container. Il valore predefinito è definito dal demone --log-driver bandiera.
avvertimento: il scaricatore di porto i registri il comando funziona solo per json ed
diario driver di registrazione.

--log-opz= []
Registrazione delle opzioni specifiche del driver.

-m, --memoria=""
Limite di memoria (formato: [ ], dove unità = b, k, m o g)

Consente di vincolare la memoria disponibile per un contenitore. Se l'host supporta lo scambio
memoria, quindi il -m l'impostazione della memoria può essere maggiore della RAM fisica. Se un limite di 0 è
specificato (non in uso -m), la memoria del contenitore non è limitata. Il limite effettivo potrebbe essere
arrotondato per eccesso a un multiplo della dimensione della pagina del sistema operativo (il valore sarebbe molto
grande, sono milioni di trilioni).

--prenotazione-memoria=""
Limite software di memoria (formato: [ ], dove unità = b, k, m o g)

Dopo aver impostato la prenotazione della memoria, quando il sistema rileva conflitto di memoria o memoria insufficiente,
i contenitori sono costretti a limitare il loro consumo alla loro prenotazione. Quindi dovresti
imposta sempre il valore sotto --memoria, altrimenti il ​​limite rigido avrà la precedenza. Di
impostazione predefinita, la prenotazione della memoria sarà uguale al limite di memoria.

--scambio di memoria="LIMITE"
Un valore limite uguale a memoria più swap. Deve essere utilizzato con il -m (--memoria) bandiera. Il
swap LIMITE dovrebbe essere sempre più grande di -m (--memoria) valore.

Il formato di LIMITE is [ ]. L'unità può essere b (byte), k (kilobyte), m
(megabyte), o g (gigabyte). Se non specifichi un'unità, b viene utilizzato. Imposta LIMIT su -1 a
abilitare lo scambio illimitato.

--indirizzo MAC=""
Indirizzo MAC del contenitore (es. 92:d0:c6:0a:29:33)

Ricorda che l'indirizzo MAC in una rete Ethernet deve essere univoco. Il collegamento IPv6 locale
l'indirizzo sarà basato sull'indirizzo MAC del dispositivo secondo RFC4862.

--nome=""
Assegna un nome al contenitore

L'operatore può identificare un contenitore in tre modi:
Identificatore lungo UUID
(“f78375b1c487e03c9438c729345e54db9d20cfa2ac1fc3494b6eb60872e74778”)
Identificatore breve UUID ("f78375b1c487")
Nome ("giona")

Gli identificatori UUID provengono dal demone Docker e se non viene assegnato un nome al
contenitore con --nome quindi il demone genererà anche un nome di stringa casuale. Il nome è
utile quando si definiscono i collegamenti (vedi --collegamento) (o qualsiasi altro luogo in cui è necessario identificare a
contenitore). Funziona sia per i contenitori Docker in background che per quelli in primo piano.

--netto="Ponte dei lucchetti "
Imposta la modalità di rete per il contenitore
'bridge': crea uno stack di rete sul Docker predefinito
Ponte dei lucchetti
'nessuno': nessuna rete
'contenitore: ': riutilizza la rete di un altro contenitore
pila
'host': utilizza lo stack di rete dell'host Docker. Nota: l'host
La modalità dà al contenitore pieno accesso ai servizi del sistema locale come D-bus ed è
quindi considerato insicuro.
' | ': connettersi a un utente definito
Rete

--net-alias= []
Aggiungi alias con ambito di rete per il contenitore

--oom-kill-disabilita=vero|falso
Se disabilitare o meno OOM Killer per il contenitore.

--oom-punteggio-agg=""
Ottimizza le preferenze OOM dell'host per i contenitori (accetta da -1000 a 1000)

-P, --pubblica-tutto=vero|falso
Pubblica tutte le porte esposte su porte casuali sulle interfacce host. L'impostazione predefinita è falso.

Se impostato su true, pubblica tutte le porte esposte sulle interfacce host. L'impostazione predefinita è false.
Se l'operatore utilizza -P (o -p), Docker renderà accessibile la porta esposta sul
host e le porte saranno disponibili per qualsiasi client in grado di raggiungere l'host. Quando si usa -P,
Docker collegherà qualsiasi porta esposta a una porta casuale sull'host all'interno di un effimero porto
gamma definito da /proc/sys/net/ipv4/ip_local_port_range. Per trovare la mappatura tra i
porte host e le porte esposte, utilizzare scaricatore di porto porto.

-p, --pubblicare= []
Pubblica la porta di un container, o un intervallo di porte, sull'host.

Formato: ip:portahost:portacontainer | ip::containerPort | hostPort:Portacontainer |
containerPort Sia hostPort che containerPort possono essere specificati come un intervallo di porte. quando
specificando gli intervalli per entrambi, il numero di porte container nell'intervallo deve corrispondere a
numero di porte host nell'intervallo. (per esempio, scaricatore di porto eseguire il -p 1234-1236: 1222-1224 --nome
questo funziona -t occupato ma non scaricatore di porto eseguire il -p 1230-1236: 1230-1240 --nome
RangeContainerPortsPiù grande diRangeHostPorts -t occupato) Con IP: scaricatore di porto eseguire il -p
127.0.0.1:$PORTOPORTO:$PORTOCONTAINER --nome CONTAINER -t qualche immagine Usa il scaricatore di porto porto da vedere
la mappatura vera e propria: scaricatore di porto porto CONTAINER $CONTENIERPORT

--pid=host
Imposta la modalità PID per il contenitore
host: usa lo spazio dei nomi PID dell'host all'interno del contenitore.
Nota: la modalità host fornisce al contenitore pieno accesso al PID locale ed è quindi
considerato insicuro.

--uts=host
Imposta la modalità UTS per il contenitore
host: usa lo spazio dei nomi UTS dell'host all'interno del contenitore.
Nota: la modalità host consente al contenitore di accedere alla modifica del nome host dell'host ed è
quindi considerato insicuro.

--privilegiato=vero|falso
Assegna privilegi estesi a questo contenitore. L'impostazione predefinita è falso.

Per impostazione predefinita, i contenitori Docker sono "non privilegiati" (=false) e non possono, ad esempio, eseguire un
Demone Docker all'interno del contenitore Docker. Questo perché per impostazione predefinita un contenitore non lo è
consentito l'accesso a qualsiasi dispositivo. Un contenitore "privilegiato" ha accesso a tutti i dispositivi.

Quando l'operatore esegue scaricatore di porto eseguire il --privilegiato, Docker consentirà l'accesso a tutti
dispositivi sull'host e impostare alcune configurazioni in AppArmor per consentire il contenitore
quasi tutti gli stessi accessi all'host dei processi in esecuzione all'esterno di un contenitore sul
ospite.

--sola lettura=vero|falso
Monta il filesystem radice del contenitore in sola lettura.

Per impostazione predefinita, un contenitore avrà il suo filesystem radice scrivibile consentendo ai processi di scrivere
file ovunque. Specificando il --sola lettura flag il contenitore avrà la sua radice
filesystem montato in sola lettura che proibisce qualsiasi scrittura.

--ricomincia="no"
Riavvia il criterio da applicare all'uscita di un contenitore (no, on-failure[:max-retry], always,
a meno che non venga fermato).

--rm=vero|falso
Rimuovi automaticamente il contenitore quando esce (incompatibile con -d). L'impostazione predefinita è
falso.

--opt-sicurezza= []
Opzioni di protezione

"label:user:USER": imposta l'utente dell'etichetta per il contenitore
"label:role:ROLE": imposta il ruolo dell'etichetta per il contenitore
"label:type:TYPE": imposta il tipo di etichetta per il contenitore
"label:level:LEVEL": imposta il livello dell'etichetta per il contenitore
"label:disable": Disattiva il confinamento dell'etichetta per il contenitore

--segnale-stop=TERMINE
Segnale di fermare un container. L'impostazione predefinita è SIGTERM.

--shm-dimensione=""
Taglia di /dev/shm. Il formato è .
numero deve essere maggiore 0. L'unità è opzionale e può essere b (byte), k (kilobyte),
m(megabyte), o g (gigabyte).
Se si omette l'unità, il sistema utilizza i byte. Se ometti completamente la dimensione, il sistema
usa 64m.

--sig-proxy=vero|falso
Il proxy ha ricevuto segnali al processo (solo modalità non TTY). SIGCHLD, SIGSTOP e
SIGKILL non sono proxy. L'impostazione predefinita è vero.

--memoria-swappiness=""
Ottimizza il comportamento di scambio di memoria di un contenitore. Accetta un numero intero compreso tra 0 e 100.

-t, --tty=vero|falso
Assegna uno pseudo-TTY. L'impostazione predefinita è falso.

Se impostato su true, Docker può allocare uno pseudo-tty e collegarsi all'input standard di any
contenitore. Questo può essere usato, ad esempio, per eseguire una shell interattiva usa e getta. Il
l'impostazione predefinita è falso.

I -t L'opzione non è compatibile con un reindirizzamento dell'input standard del client docker.

--tmpfs=[] Crea un mount tmpfs

Monta un filesystem temporaneo (tmpfs) montare in un contenitore, ad esempio:

$ docker esegui -d --tmpfs / Tmp:rw,size=787448k,mode=1777 mia_immagine

Questo comando monta a tmpfs at / Tmp all'interno del contenitore. Le opzioni di montaggio supportate sono
lo stesso dell'impostazione predefinita di Linux Mount bandiere. Se non si specifica alcuna opzione, i sistemi
utilizza le seguenti opzioni: rw,noexec,nosuid,nodev,size=65536k.

-u, --utente=""
Imposta il nome utente o l'UID utilizzato e, facoltativamente, il nome del gruppo o il GID per l'oggetto specificato
comando.

I seguenti esempi sono tutti validi:
--user [utente | utente:gruppo | uid | uid:gid | utente:gid | uid:gruppo]

Senza questo argomento il comando verrà eseguito come root nel contenitore.

--ulimit= []
Opzioni limite

-v|--volume[=[[HOST-DIR:]CONTENITORE-DIR[:OPZIONI]]]
Crea un montaggio legato. Se specifichi, -v /DIREZIONE-HOST:/DIREZIONE-CONTENITORE, Doker
bind mounts /DIR.-OST nell'host per /CONTENITORE-DIR nel Dock
contenitore. Se 'HOST-DIR' viene omesso, Docker crea automaticamente il nuovo
volume sull'host. Il VERSIONI sono un elenco delimitato da virgole e possono essere:

· [rw|ro]

· [z|z]

· [[r]condiviso|[r]schiavo|[r]privato]

I CONTENITORE-DIR deve essere un percorso assoluto come /src/docs. HOST-DIR può essere un file
percorso assoluto o a Nome valore. UN Nome il valore deve iniziare con un carattere alfanumerico,
seguito da a-z0-9, _ (sottolineare), . (punto) o - (trattino). Un percorso assoluto inizia con
a / (barra).

Se fornisci un file HOST-DIR questo è un percorso assoluto, Docker si lega al percorso che tu
specificare. Se fornisci un Nome, Docker crea un volume denominato in questo modo Nome. Per esempio,
puoi specificare sia /pippo or foo per HOST-DIR valore. Se fornisci il /pippo valore,
Docker crea un montaggio di associazione. Se fornisci il foo specifica, Docker crea un nome
volume.

Puoi specificare più -v opzioni per montare uno o più montaggi su un contenitore. Usare
questi stessi supporti in altri contenitori, specificare il --volumi-da opzione anche.

È possibile aggiungere :Ro or :rw suffisso a un volume per montarlo in modalità di sola lettura o lettura-scrittura,
rispettivamente. Per impostazione predefinita, i volumi sono montati in lettura-scrittura. Vedi esempi.

I sistemi di etichettatura come SELinux richiedono che le etichette appropriate siano posizionate sul contenuto del volume
montato in un contenitore. Senza un'etichetta, il sistema di sicurezza potrebbe impedire i processi
in esecuzione all'interno del contenitore dall'utilizzo del contenuto. Per impostazione predefinita, Docker non cambia
le etichette impostate dal sistema operativo.

Per modificare un'etichetta nel contesto del contenitore, puoi aggiungere uno dei due suffissi :z or :Z a
la montatura del volume. Questi suffissi dicono a Docker di rietichettare gli oggetti file sulla condivisione
volumi. Il z L'opzione indica a Docker che due contenitori condividono il contenuto del volume. Come un
risultato, Docker etichetta il contenuto con un'etichetta di contenuto condivisa. Le etichette del volume condiviso consentono
tutti i contenitori per leggere/scrivere contenuti. Il Z opzione dice a Docker di etichettare il contenuto con
un'etichetta privata non condivisa. Solo il contenitore corrente può utilizzare un volume privato.

Per impostazione predefinita, i volumi montati su bind sono un bagno. Ciò significa che qualsiasi montaggio eseguito all'interno del contenitore
non sarà visibile sull'host e viceversa. Si può cambiare questo comportamento specificando a
proprietà di propagazione del montaggio del volume. Fare un volume condiviso montature fatte sotto quel volume
all'interno del contenitore sarà visibile sull'host e viceversa. Fare un volume schiavo Abilita
la propagazione del montaggio in un solo modo e cioè i montaggi eseguiti sull'host sotto quel volume sarà
visibile all'interno del contenitore ma non viceversa.

Per controllare la proprietà di propagazione della montatura del volume si può usare :[r]condiviso, :[r]schiavo or
:[r]privato bandiera di propagazione. La proprietà di propagazione può essere specificata solo per il bind montato
volumi e non per volumi interni o volumi denominati. Affinché la propagazione della montatura funzioni
il punto di montaggio della sorgente (punto di montaggio su cui è montata la directory sorgente) deve avere il diritto
proprietà di propagazione. Per i volumi condivisi, il punto di montaggio di origine deve essere condiviso. E per
volumi slave, il montaggio della sorgente deve essere condiviso o slave.

Usa il df per capire il monte della sorgente e poi usare trovata -o
BERSAGLIO,PROPAGAZIONE per capire le proprietà di propagazione della sorgente
montare. Se trovata l'utilità non è disponibile, quindi si può guardare la voce mount per sorgente
punto di montaggio in /proc/self/mountinfo. Guarda a opzionale campi e vedi se c'è propagazione
le proprietà sono specificate. condiviso:X significa che il monte è condiviso, maestro:X significa che il monte è schiavo
e se non c'è niente significa che il monte è un bagno.

Per modificare le proprietà di propagazione di un punto di montaggio utilizzare Mount comando. Ad esempio, se uno
vuole associare la directory sorgente di montaggio /pippo si può fare Mount --legamento /pippo /pippo ed Mount
--rendere privato --make-condiviso /pippo. Questo convertirà / pippo in a condiviso punto di montaggio.
In alternativa è possibile modificare direttamente le proprietà di propagazione del montaggio sorgente. Dire / is
sorgente di montaggio per /pippo, quindi utilizzare Mount --make-condiviso / convertire / in condiviso montare.

Note:Nota: quando si utilizza systemd per gestire l'avvio e l'arresto del demone Docker, nel
systemd unit file c'è un'opzione per controllare la propagazione del montaggio per Docker
demone stesso, chiamato Bandiere di montaggio. Il valore di questa impostazione potrebbe impedire a Docker di non farlo
vedere le modifiche alla propagazione del montaggio apportate al punto di montaggio. Ad esempio, se questo valore
is schiavo, potresti non essere in grado di utilizzare il condiviso or rcondiviso propagazione su un volume.

--driver-volume=""
Driver del volume del contenitore. Questo driver crea volumi specificati da
un Dockerfile's VOLUME istruzione o dal scaricatore di porto eseguire il -v bandiera.
See docker-volume-crea(1) per maggiori dettagli.

--volumi-da= []
Monta volumi dai contenitori specificati

Monta volumi già montati da un contenitore di origine su un altro
contenitore. È necessario fornire l'ID contenitore dell'origine. Condividere
un volume, usa il --volumi-da opzione durante l'esecuzione
il contenitore di destinazione. Puoi condividere i volumi anche se il contenitore di origine
non sta correndo.

Per impostazione predefinita, Docker monta i volumi nella stessa modalità (lettura-scrittura o
di sola lettura) poiché è montato nel contenitore di origine. Facoltativamente, tu
può cambiarlo aggiungendo al container-id il suffisso con :Ro or
:rw parola chiave.

Se la posizione del volume dal contenitore di origine si sovrappone a
dati che risiedono su un contenitore di destinazione, quindi il volume si nasconde
quei dati sul bersaglio.

-w, --dir.lavoro=""
Directory di lavoro all'interno del contenitore

La directory di lavoro predefinita per l'esecuzione di binari all'interno di un contenitore è root
cartella (/). Lo sviluppatore può impostare un valore predefinito diverso con il Dockerfile WORKDIR
istruzione. L'operatore può sovrascrivere la directory di lavoro utilizzando il -w opzione.

uscita Stato dei servizi


Il codice di uscita da scaricatore di porto eseguire il fornisce informazioni sul motivo per cui il contenitore non è stato eseguito o
perché è uscito. quando scaricatore di porto eseguire il esce con codice diverso da zero, i codici di uscita seguono il
chroot standard, vedi sotto:

125 if , il errore is con docker demone stessa

$ docker run --foo busybox; eco $?
# flag fornito ma non definito: --foo
Vedi 'docker run --help'.
125

126 if , il contenute command non può be invocato

$ docker esegui busybox / Etc; eco $?
# esec: "/ Etc": permesso negato
finestra mobile: risposta di errore dal demone: impossibile richiamare il comando contenuto
126

127 if , il contenute command non può be essere trovato

$ docker esegui busybox foo; eco $?
# exec: "foo": file eseguibile non trovato in $PATH
finestra mobile: risposta di errore dal demone: comando contenuto non trovato o inesistente
127

uscita codice of contenute command altrimenti

$ docker esegui busybox /bin/sh -c 'uscita 3'
# 3

ESEMPI


corsa contenitore in sola lettura modo


Durante lo sviluppo dell'immagine del contenitore, i contenitori spesso devono scrivere sul contenuto dell'immagine.
Installazione di pacchetti in / usr, Per esempio. In produzione, le applicazioni raramente necessitano di
scrivi sull'immagine Le applicazioni contenitore scrivono sui volumi se devono scrivere su file
sistemi affatto. Le applicazioni possono essere rese più sicure eseguendole in modalità di sola lettura
utilizzando l'opzione --read-only. Ciò protegge l'immagine dei contenitori dalla modifica. Leggi
solo i contenitori potrebbero dover ancora scrivere dati temporanei. Il modo migliore per gestire questo è quello di
monta le directory tmpfs su / correre e /tmp.

# docker esegui --sola lettura --tmpfs / correre --tmpfs / Tmp -io -t fedora / bin / bash

Esposizione ceppo messaggi da , il contenitore a , il dell'ospite ceppo


Se vuoi che i messaggi che sono registrati nel tuo contenitore vengano visualizzati nell'host
syslog/journal, allora dovresti associare mount alla directory /dev/log come segue.

# docker esegui -v /dev/log:/dev/log -i -t fedora / bin / bash

Dall'interno del contenitore puoi testarlo inviando un messaggio al log.

(bash)# logger "Ciao dal mio contenitore"

Quindi esci e controlla il diario.

# Uscita

# journalctl -b | grep Ciao

Questo dovrebbe elencare il messaggio inviato al logger.

Collegamento a prima or Scopri di più da STDIN, STDOUT, Stderr


Se non specifichi -a, Docker allegherà tutto (stdin,stdout,stderr)
piace invece connettersi, come in:

# docker esegui -a stdin -a stdout -i -t fedora / bin / bash

Sharing IPC fra contenitori


Utilizzando shm_server.c disponibile qui: https://www.cs.cf.ac.uk/Dave/C/node27.html⟩

Testing --ipc=ospite modalità:

L'host mostra un segmento di memoria condivisa con 7 pid collegati, sembra provenire da httpd:

$ sudo ipcs -m

------ Segmenti di memoria condivisa --------
key shmid proprietario perms stato nattch byte
0x01128e25 0 radice 600 1000 7

Ora esegui un contenitore normale e NON vede correttamente il segmento di memoria condivisa da
il padrone di casa:

$ docker esegui -it shm ipcs -m

------ Segmenti di memoria condivisa --------
key shmid proprietario perms stato nattch byte

Esegui un contenitore con il nuovo --ipc=ospite opzione, e ora vede il segmento di memoria condivisa
dall'host httpd:

$ docker esegui -it --ipc=host shm ipcs -m

------ Segmenti di memoria condivisa --------
key shmid proprietario perms stato nattch byte
0x01128e25 0 radice 600 1000 7

Testing --ipc=contenitore:IDCONTAINER modalità:

Avvia un contenitore con un programma per creare un segmento di memoria condivisa:

$ docker esegui -it shm bash
$ sudo shm/shm_server
$ sudo ipcs -m

------ Segmenti di memoria condivisa --------
key shmid proprietario perms stato nattch byte
0x0000162e 0 radice 666 27 1

Crea un secondo contenitore correttamente non mostra alcun segmento di memoria condivisa dal primo contenitore:

$ docker esegui shm ipcs -m

------ Segmenti di memoria condivisa --------
key shmid proprietario perms stato nattch byte

Crea un terzo contenitore usando la nuova opzione --ipc=container:CONTAINERID, ora mostra il
segmento di memoria condivisa dal primo:

$ docker run -it --ipc=contenitore:ed735b2264ac shm ipcs -m
$ sudo ipcs -m

------ Segmenti di memoria condivisa --------
key shmid proprietario perms stato nattch byte
0x0000162e 0 radice 666 27 1

Collegamento Tecnologie Container


Note:: Questa sezione descrive il collegamento tra contenitori sul default (bridge)
rete, nota anche come "legacy link". Usando --collegamento su reti definite dall'utente utilizza
il rilevamento basato su DNS, che non aggiunge voci a / Etc / hosts, e non imposta
variabili d'ambiente per la scoperta.

La funzione di collegamento consente a più contenitori di comunicare tra loro. Ad esempio, a
container il cui Dockerfile ha esposto la porta 80 può essere eseguito e denominato come segue:

# docker esegui --name=link-test -d -i -t fedora/httpd

Un secondo contenitore, in questo caso chiamato linker, può comunicare con il contenitore httpd,
denominato link-test, eseguendo con --link= :

# docker run -t -i --link=link-test:lt --name=linker fedora / bin / bash

Ora il container linker è collegato al container link-test con l'alias lt. correndo il
ENV comando nel contenitore del linker mostra le variabili di ambiente
con il contesto LT (alias) (LT_)

# inv
NOME HOST=668231cb0978
TERM=xtermine
LT_PORT_80_TCP=tcp://172.17.0.3:80
LT_PORT_80_TCP_PORT=80
LT_PORT_80_TCP_PROTO=TCP
LT_PORT=tcp://172.17.0.3:80
PERCORSO=/ usr / local / sbin:/ Usr / local / bin:/ usr / sbin:/ Usr / bin:/ sbin:/bidone
PWD=/
NOME_LT=/linker/lt
SCALA=1
CASA=/
LT_PORT_80_TCP_ADDR=172.17.0.3
_=/usr/bin/env

Quando si collegano due container, Docker utilizzerà le porte esposte del container per creare un
tunnel sicuro per l'accesso del genitore.

Se un container è connesso alla rete bridge predefinita e connesso con altri
contenitori, quindi il contenitore's / Etc / hosts il file viene aggiornato con il contenitore collegato
nome.

Note: Dal momento che Docker potrebbe aggiornare dal vivo il contenitore / Etc / hosts file, potrebbe esserci
situazioni in cui i processi all'interno del contenitore possono finire per leggere un or vuoto
incompleto / Etc / hosts file. Nella maggior parte dei casi, riprovare a leggere dovrebbe risolvere il problema
problema.

Mappatura porte per Esterno Impiego


La porta esposta di un'applicazione può essere mappata su una porta host utilizzando il pulsante -p bandiera. Per
Ad esempio, una porta httpd 80 può essere mappata alla porta host 8080 utilizzando quanto segue:

# docker esegui -p 8080:80 -d -i -t fedora/httpd

Creazione ed Montaggio a Dati Volume Contenitore


Molte applicazioni richiedono la condivisione di dati persistenti tra più contenitori. Docker
consente di creare un contenitore di volumi di dati da cui possono essere montati altri contenitori. Per
esempio, creare un contenitore denominato che contenga le directory /var/volume1 e /tmp/volume2.
L'immagine dovrà contenere queste directory quindi un paio di istruzioni RUN mkdir
potrebbe essere richiesto per la tua immagine fedora-data:

# docker esegui --name=data -v /var/volume1 -v /tmp/volume2 -i -t fedora-data true
# docker esegui --volumes-from=data --name=fedora-container1 -i -t fedora bash

Più parametri --volumes-from riuniranno più volumi di dati da più
contenitori. Ed è possibile montare i volumi che provenivano dal contenitore DATI in
ancora un altro contenitore tramite il contenitore intermedio fedora-container1, che consente di
astrarre l'effettiva fonte di dati dagli utenti di quei dati:

# docker esegui --volumes-from=fedora-container1 --name=fedora-container2 -i -t fedora bash

Montaggio Esterno Volumi


Per montare una directory host come volume contenitore, specificare il percorso assoluto del
directory e il percorso assoluto per la directory del contenitore separati da due punti:

# docker esegui -v /var/db:/data1 -i -t fedora bash

Quando si utilizza SELinux, tenere presente che l'host non è a conoscenza della politica SELinux del contenitore.
Pertanto, nell'esempio sopra, se viene applicata la politica SELinux, il /var/db directory è
non scrivibile sul contenitore. Verrà visualizzato un messaggio "Autorizzazione negata" e un avc:
messaggio nel syslog dell'host.

Per ovviare a questo problema, al momento della scrittura di questa pagina man, il seguente comando deve essere
eseguire in modo che l'etichetta del tipo di politica SELinux corretta sia allegata all'host
directory:

# chcon -Rt svirt_sandbox_file_t /var/db

Ora, la scrittura nel volume /data1 nel contenitore sarà consentita e le modifiche saranno
riflettersi anche sull'host in /var/db.

utilizzando alternativa problemi di etichettatura


È possibile sovrascrivere lo schema di etichettatura predefinito per ogni contenitore specificando il
--opt-sicurezza bandiera. Ad esempio, puoi specificare il livello MCS/MLS, un requisito per MLS
sistemi. Specificare il livello nel seguente comando consente di condividere lo stesso
contenuto tra i contenitori.

# docker esegui --security-opt label:level:s0:c100,c200 -i -t fedora bash

Un esempio MLS potrebbe essere:

# docker run --security-opt label:level:TopSecret -i -t rhel7 bash

Per disabilitare l'etichettatura di sicurezza per questo contenitore rispetto all'esecuzione con il --permissivo
flag, utilizzare il seguente comando:

# docker esegui --security-opt label:disable -i -t fedora bash

Se desideri una politica di sicurezza più rigorosa sui processi all'interno di un contenitore, puoi specificare
un tipo alternativo per il contenitore. Potresti eseguire un contenitore a cui è consentito solo
ascolta sulle porte Apache eseguendo il seguente comando:

# docker esegui --security-opt label:type:svirt_apache_t -i -t centos bash

Nota:

Dovresti scrivere una politica che definisce a svirt_apache_t tipo.

Configurazione dispositivo peso


Se vuoi impostare / dev / sda peso del dispositivo a 200, è possibile specificare il peso del dispositivo tramite
--blkio-peso-dispositivo bandiera. Usa il seguente comando:

# docker run -it --blkio-weight-device "/dev/sda:200" ubuntu

Specificare da solo la tecnologia per contenitore (--isolamento)


Questa opzione è utile in situazioni in cui si eseguono container Docker su Microsoft
Finestre. Il --isolamento opzione imposta la tecnologia di isolamento di un contenitore. Su Linux,
l'unico supportato è il difetto opzione che utilizza gli spazi dei nomi Linux. Questi due comandi
sono equivalenti su Linux:

$ docker run -d busybox in alto
$ docker run -d --isolation default busybox in alto

Su Microsoft Windows, può assumere uno di questi valori:

· difetto: usa il valore specificato dal demone Docker --exec-opz . Se il demone effettua
non specificare una tecnologia di isolamento, utilizza Microsoft Windows processi come impostazione predefinita
valore.

· processi: solo isolamento dello spazio dei nomi.

· ipervelocitàNota: isolamento basato su partizione hypervisor Hyper-V.

In pratica, quando si esegue su Microsoft Windows senza a demone set di opzioni, questi due
i comandi sono equivalenti:

$ docker run -d --isolation default busybox in alto
$ docker run -d --isolation process busybox top

Se hai impostato il --exec-opz isolamento=iperv opzione sulla finestra mobile demone, nessuno di questi
anche i comandi risultano in ipervelocità isolamento:

$ docker run -d --isolation default busybox in alto
$ docker run -d --isolation hyperv busybox in alto

STORIA


Aprile 2014, originariamente compilato da William Henry (whenry at redhat dot com) basato su
materiale sorgente docker.com e lavoro interno. Giugno 2014, aggiornato da Sven Dowideit
[email protected]⟩ Luglio 2014, aggiornato da Sven Dowideit ⟨[email protected]
Novembre 2015, aggiornato da Sally O'Malley ⟨[email protected]

Usa docker-run online utilizzando i servizi onworks.net


Server e workstation gratuiti

Scarica app per Windows e Linux

  • 1
    facetrack noir
    facetrack noir
    Programma headtracking modulare che
    supporta più face tracker, filtri
    e protocolli di gioco. Tra i tracker
    sono SM FaceAPI, AIC Inertial Head
    Inseguitore...
    Scarica facetrack noir
  • 2
    Codice QR PHP
    Codice QR PHP
    Il codice QR PHP è open source (LGPL)
    libreria per la generazione di QR Code,
    Codice a barre bidimensionale. Basato su
    libreria libqrencode C, fornisce API per
    creazione barra QR Code...
    Scarica codice QR PHP
  • 3
    freeciv
    freeciv
    Freeciv è un gioco a turni gratuito
    gioco di strategia multiplayer, in cui ciascuno
    giocatore diventa il leader di a
    civiltà, lottando per ottenere il
    obiettivo finale: diventare...
    Scarica Freeciv
  • 4
    Sandbox cuculo
    Sandbox cuculo
    Cuckoo Sandbox utilizza i componenti per
    monitorare il comportamento del malware in a
    Ambiente sandbox; isolato dal
    resto del sistema. Offre automatizzato
    analisi o...
    Scarica Cuckoo Sandbox
  • 5
    LMS-YouTube
    LMS-YouTube
    Riproduci video di YouTube su LMS (porting di
    Triode's to YouTbe API v3) Questo è
    un'applicazione che può anche essere recuperata
    da
    https://sourceforge.net/projects/lms-y...
    Scarica LMS-YouTube
  • 6
    Fondazione per la presentazione di Windows
    Fondazione per la presentazione di Windows
    Fondazione presentazione Windows (WPF)
    è un framework dell'interfaccia utente per la creazione di Windows
    applicazioni desktop. WPF supporta a
    ampio set di sviluppo di applicazioni
    Caratteristiche...
    Scarica Windows Presentation Foundation
  • Di Più "

Comandi Linux

Ad