docker, docker-compose安裝和使用


官方文檔:

安裝docker: 

https://docs.docker.com/install/linux/docker-ce/centos/

安裝docker-compose:

https://docs.docker.com/compose/install/

# 所有docker命令映射都是:local:container

# create container
docker run --name <name> -p 123:123 -d <image> -v local_path:container_path

# if failed, see logs
docker logs <name/id>

# see how many docker containers
docker ps -a

# see networks
docker network ls

# see network detail
docker network inspect <name/id>

# enter a container
docker exec -ti <name/id> bash

# start docker after rebooting
docker start <name/id>

# check status
docker stats [name/id]

# delete container
docker rm <name/id>

docker container rm $(docker container ls -a -q)         # Remove all containers

# image
docker build 

docker image ls -a                             # List all images on this machine
docker image rm <image id>            # Remove specified image from this machine
docker image rm $(docker image ls -a -q)   # Remove all images from this machine
docker login             # Log in this CLI session using your Docker credentials
docker tag <image> username/repository:tag  # Tag <image> for upload to registry
docker push username/repository:tag            # Upload tagged image to registry
docker run username/repository:tag                   # Run image from a registry
# 4.刪除images,通過image的id來指定刪除誰

docker rmi <image id>

# 想要刪除untagged images,也就是那些id為<None>的image的話可以用

docker rmi $(docker images | grep "^<none>" | awk "{print $3}")

# 要刪除全部image的話

docker rmi $(docker images -q)

 

docker run 命令解析:
https://www.runoob.com/docker/docker-run-command.html

 

學習:
https://docs.docker.com/get-started/part3/

 

docker-compose.yaml例子

version: '3'
services:
    nginx:
        image: nginx:latest
        # 端口映射
        ports:
            - "80:80"
        # 依賴關系 先跑php
        depends_on:
            - "php"
        # 數據卷
        volumes:
            # 映射主機./conf.d目錄到容器/etc/nginx/conf.d目錄
            - "$PWD/conf.d:/etc/nginx/conf.d"
            - "$PWD/html:/usr/share/nginx/html"
        networks:
            - app_net
        # 容器名稱
        container_name: "compose-nginx"
    php:
        build: ./php-mysqli
        # image指定build Dockerfile生成鏡像的名稱
        image: php:7.2-fpm-mysqli
        ports:
            - "9000:9000"
        volumes:
            - "$PWD/html:/var/www/html"
        networks:
            - app_net
        container_name: "compose-php"
    mysql:
        image: mysql:5.7
        ports:
            - "3306:3306"
        # 環境變量
        environment:
            # mysql密碼
            - MYSQL_ROOT_PASSWORD={自己填密碼}
        networks:
            app_net:
                # 固定子網ip,網段必須在子網絡10.10.*.*
                ipv4_address: 10.10.10.1
        container_name: "compose-mysql"
networks:
    # 配置docker network
    app_net:
        driver: bridge
        ipam:
            config:
                # 子網絡
                - subnet: 10.10.0.0/16
docker-compose up

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM