PHPer看docker容器的管理详解

查询容器信息

docker inspcet

查询信息,包括运行情况、存贮位置、配置参数、网络设置等。

查询容器的运行状态

docker inspect -f {
   {
   .State.Status}} 【容器】

查询容器的IP

docker inspect  -f {
   {
   .NetworkSettings.IPAddress}} 【容器】

查询容器日志信息Ω

docker logs 【容器】

-f 实时打印最新的日志

docker stats 实时查看容器所占的系统资源
如CPU使用率、内存、网络、磁盘开销

容器内部命令
原生方式登入docker exec

docker exec + 容器名 +容器内执行的命令

比如查询容器php的所有进程:

docker exec php7-dev ps -ef

容器内连续执行多条命令,可以加上 “-it”参数,相当于以root身份登入容器内,可连续执行命令,执行exit退出。

docker exec -it php7-dev /bin/bash

多容器管理
多个容器有数据交互,依赖,启动方式就必须有先后,如:

# db容器优先于WordPress启动
docker start db docker start WordPress

docker composer
容器编排工具,允许用户在一个模版(YAML格式)中定义一组相关联的应用容器,这组容器会根据配置模版中的“–link”等参数,对启动的优先级自动排序,简单执行一条“docker-composer up”,就可以把同一服务中的多个容器依次创建和启动。

安装方式,参考官方

sudo curl -L "https://github.com/docker/compose/releases/download/1.23.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
sudo chmod +x /usr/local/bin/docker-compose

#查看compose版本
docker-compose --version
#docker-compose version 1.23.1, build b02f1306

例如启动wordpress项目,创建wordpress文件夹,文件夹内创建docker-composer.yml文件,内容:

wordpress:
    image: wordpress
    links:
        - db:mysql
    ports:
        - 8080:80
db:
    image: mariadb
    environment:
        MYSQL_ROOT_PASSWORD: example

选项 links、ports、environment、volumes分别对应 docker run中的"–links"(容器互联)、"-p"(端口映射)、“-e”(环境变量设置)、“-v”(映射目录)。
restart: always 一直在线

docker-compose up 创建和启用服务 加-d后台运行 docker-compose up -d

你可能感兴趣的:(PHP架构,docker,python,mysql,php)