Docker-compose что это? Первое знакомство | уроки docker | #6
Innehållsförteckning:
- förutsättningar
- Installera Docker Compose på CentOS
- Komma igång med Docker Compose
- Avinstallera Docker Compose
- Slutsats
Docker Compose är ett verktyg som låter dig definiera och köra Docker-applikationer med flera containrar.
Med Compose definierar du applikationens tjänster, nätverk och volymer i en enda YAML-fil och snurrar sedan din applikation med ett enda kommando.
Komposit kan användas för olika ändamål, till exempel implementering av enstaka värdapplikationer, automatiserad testning och lokal utveckling.
Denna handledning leder dig genom att installera den senaste versionen av Docker Compose på CentOS 7. Vi kommer också att täcka de grundläggande Docker Compose-koncept och kommandon.
förutsättningar
Se till att du uppfyllt följande förutsättningar innan du fortsätter med den här handledning:
- Loggat in som användare med sudo-privilegier. Har Docker installerat på ditt CentOS 7-system.
Installera Docker Compose på CentOS
Den rekommenderade metoden för att installera Docker Compose på CentOS 7 är genom att ladda ner Compose binär från Dockers GitHub-arkiv.
Vid skrivandet av denna artikel är den senaste stabila versionen av Docker Compose version
1.23.1
. Innan du laddar ner Compose-binären besöker du release-sidan för Compose repository på GitHub och kontrollerar om det finns en ny version som kan laddas ner.
Följ följande steg för att installera Docker Compose på CentOS 7:
-
Börja med att ladda ner Docker Compose binär i
/usr/local/binmed följandecurlkommando:sudo curl -L "https://github.com/docker/compose/releases/download/1.23.1/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-composeNär nedladdningen är klar gör du den binära körbara genom att skriva:
sudo chmod +x /usr/local/bin/docker-composeFör att verifiera installationen skriver du följande kommando för att skriva ut Compose-versionen:
docker-compose --versionUtgången ser ut så här:
docker-compose version 1.23.1, build b02f1306
Komma igång med Docker Compose
I det här avsnittet visar vi hur du använder Docker Compose för att köra en WordPress-stack på din CentOS 7-maskin.
Börja med att skapa en ny katalog för projektet och navigera i det:
mkdir my_app && cd my_app
docker-compose.yml
en fil med namnet
docker-compose.yml
i projektkatalogen:
nano docker-compose.yml
Klistra in följande innehåll:
docker-compose.yml
version: '3.3' services: db: image: mysql:5.7 restart: always volumes: - db_data:/var/lib/mysql environment: MYSQL_ROOT_PASSWORD: password MYSQL_DATABASE: wordpress wordpress: image: wordpress restart: always volumes: -./wp_data:/var/www/html ports: - "8080:80" environment: WORDPRESS_DB_HOST: db:3306 WORDPRESS_DB_NAME: wordpress WORDPRESS_DB_USER: root WORDPRESS_DB_PASSWORD: password depends_on: - db volumes: db_data: wp_data:
Låt oss analysera koden rad för rad.
Den första raden anger kompositionsfilsversionen. Det finns flera olika versioner av Compose-filformatet med stöd för specifika Docker-utgåvor.
Därefter definierar vi två tjänster,
db
och
wordpress
. Varje tjänst kör en bild och det kommer att skapa en separat behållare när docknings-komposit körs.
db
tjänsten:
- Använder
mysql:5.7. Om bilden inte finns på ditt system kommer Compose att dra den från det offentliga arkivet för Docker Hub.Använder alltid omstartpolicy som instruerar behållaren att alltid starta om. Skapar en namngiven volymdb_dataatt göra databasen beständig. Definierar miljövariablerna förmysql:5.7bild.
wordpress
tjänsten:
- Använder
wordpressbilden. Om bilden inte finns på ditt system kommer Compose att dra den från det offentliga arkivet för Docker Hub. Använder alltid omstartpolicy som instruerar behållaren att alltid starta om.wp_datakatalogen på värden till/var/lib/mysqlinuti behållare. Vidarebefordrar den exponerade porten 80 på behållaren till port 8080 på värdmaskinen. Definierar miljövariablerna förwordpressbilden.depends_oninstruktion definierar beroendet mellan de två tjänsterna. I det här exemplet startasdbförewordpress.
Från projektkatalogen, snurra upp WordPress-applikationen med följande kommando:
docker-compose up
Utgången ska se ut så här:
… wordpress_1 | AH00163: Apache/2.4.25 (Debian) PHP/7.2.10 configured -- resuming normal operations wordpress_1 | AH00094: Command line: 'apache2 -D FOREGROUND'
Compose drar båda bilderna, startar två behållare och skapar
wp_data
katalogen i din projektkatalog.
Öppna din webbläsare, skriv
http://0.0.0.0:8080/
i så ser du installationsskärmen för Wordpress.
Just nu är WordPress-applikationen igång och du kan börja arbeta med ditt tema eller plugin.
För att stoppa Komponera, tryck
CTRL+C
miljövariabler Om du vill starta komposera i ett fristående läge använder du
-d
flaggan:
docker-compose up -d
För att kontrollera körningstjänsterna använder du alternativet
ps
:
docker-compose ps
Name Command State Ports ---------------------------------------------------------------------------------- my_app_db_1 docker-entrypoint.sh mysqld Up 3306/tcp, 33060/tcp my_app_wordpress_1 docker-entrypoint.sh apach… Up 0.0.0.0:8080->80/tcp
När Compose körs i fristående läge för att stoppa användningen av tjänster:
docker-compose stop
För att ta bort behållarna helt, använd alternativet
down
:
docker-compose down
--volumes
omkopplaren -
--volumes
kommer du att ta bort datavolymerna:
Avinstallera Docker Compose
sudo rm /usr/local/bin/docker-compose
Slutsats
Du har lärt dig hur du installerar och använder Docker Compose på en CentOS 7.
docker centosHur man installerar och använder docker compose på debian 10 linux
Docker Compose är ett verktyg som låter dig definiera och orkestrera Docker-applikationer med flera containrar. Denna handledning förklarar hur du installerar Docker Compose på Debian 10, Buster.
Hur du installerar och använder docker compose på debian 9
Docker Compose är ett verktyg som låter dig definiera och orkestrera Docker-applikationer med flera containrar. Den använder en YAML-fil för att konfigurera applikationens behållare, nätverk och volymer.
Hur du installerar och använder docker compose på ubuntu 18.04
Docker Compose är ett verktyg som låter dig definiera och hantera Docker-applikationer med flera containrar. Den använder en YAML-fil för att konfigurera applikationens tjänster, nätverk och volymer.







