Docker 容器和镜像使用

Posted 上善若水-随

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Docker 容器和镜像使用相关的知识,希望对你有一定的参考价值。

Docker 容器使用:

     docker run -d -P training/webapp python app.py
     -d:让容器在后台运行。
        -P:将容器内部使用的网络端口映射到我们使用的主机上。
    查看 WEB 应用容器:
        docker ps
    我们也可以指定 -p 标识来绑定指定端口。
    [email protected]:~$ docker run -d -p 5000:5000 training/webapp python app.py
    查看WEB应用程序容器的进程:
            docker top 容器id
    检查WEB应用程序:
            docker inspect 容器id
    停止WEB应用容器:
            docker stop 容器id   
    重启WEB应用容器:
            docker start 容器id
    移除WEB应用容器:
            docker rm 容器id (删除容器时,容器必须是停止状态) 
Docker 镜像使用:
    列出镜像列表:
            docker images 
    们如果要使用版本为15.10的ubuntu系统镜像来运行容器时,命令如下:
            docker run -t -i ubuntu:15.10 /bin/bash
    获取一个新的镜像:
            docker pull 镜像名
    查找镜像:
            docker search httpd
    运行镜像:
            docker run httpd
    创建镜像:
        当我们从docker镜像仓库中下载的镜像不能满足我们的需求时,我们可以通过以下两种方式对镜像进行更改。
            1.从已经创建的容器中更新镜像,并且提交这个镜像
            2.使用 Dockerfile 指令来创建一个新的镜像
    更新镜像:
        docker run -t -i ubuntu:15.10 /bin/bash
    在完成操作之后,输入 exit命令来退出这个容器。
    eg:
        1.安装php镜像:
            docker pull php:5.6-fpm
        2.运行容器:
        docker run -p 9000:9000 --name  myphp-fpm -v ~/nginx/www:/www -v $PWD/conf:/usr/local/etc/php -v $PWD/logs:/phplogs   -d php:5.6-fpm
            -p 9000:9000 :将容器的9000端口映射到主机的9000端口
            --name myphp-fpm :将容器命名为myphp-fpm
            -v ~/nginx/www:/www :将主机中项目的目录www挂载到容器的/www
            -v $PWD/conf:/usr/local/etc/php 将主机中当前目录下的conf目录挂载到容器的/usr/local/etc/php
            -v $PWD/logs:/phplogs 将主机中当前目录下的logs目录挂载到容器的/phplogs
        3.此处是通过nginx+php实现web服务,nginx配置文件的fastcgi_pass应该配置为myphp-fpm容器的IP。
        fastcgi_pass  172.17.0.4:9000;
        4.容器IP的查方法:
            docker inspect 容器ID或容器名 |grep "IPAddress"
                docker inspect a0aecc07d1ce |grep "IPAddress"

 

Docker 容器使用:
docker run -d -P training/webapp python app.py -d:让容器在后台运行。-P:将容器内部使用的网络端口映射到我们使用的主机上。查看 WEB 应用容器:docker ps我们也可以指定 -p 标识来绑定指定端口。[email protected]:~$ docker run -d -p 5000:5000 training/webapp python app.py查看WEB应用程序容器的进程:docker top 容器id检查WEB应用程序:docker inspect 容器id停止WEB应用容器:docker stop 容器id   重启WEB应用容器:docker start 容器id移除WEB应用容器:docker rm 容器id (删除容器时,容器必须是停止状态) Docker 镜像使用:列出镜像列表:docker images 们如果要使用版本为15.10的ubuntu系统镜像来运行容器时,命令如下:docker run -t -i ubuntu:15.10 /bin/bash获取一个新的镜像:docker pull 镜像名查找镜像:docker search httpd运行镜像:docker run httpd创建镜像:当我们从docker镜像仓库中下载的镜像不能满足我们的需求时,我们可以通过以下两种方式对镜像进行更改。1.从已经创建的容器中更新镜像,并且提交这个镜像2.使用 Dockerfile 指令来创建一个新的镜像更新镜像:docker run -t -i ubuntu:15.10 /bin/bash在完成操作之后,输入 exit命令来退出这个容器。eg:1.安装php镜像:docker pull php:5.6-fpm2.运行容器:docker run -p 9000:9000 --name  myphp-fpm -v ~/nginx/www:/www -v $PWD/conf:/usr/local/etc/php -v $PWD/logs:/phplogs   -d php:5.6-fpm-p 9000:9000 :将容器的9000端口映射到主机的9000端口--name myphp-fpm :将容器命名为myphp-fpm-v ~/nginx/www:/www :将主机中项目的目录www挂载到容器的/www-v $PWD/conf:/usr/local/etc/php 将主机中当前目录下的conf目录挂载到容器的/usr/local/etc/php-v $PWD/logs:/phplogs 将主机中当前目录下的logs目录挂载到容器的/phplogs3.此处是通过nginx+php实现web服务,nginx配置文件的fastcgi_pass应该配置为myphp-fpm容器的IP。fastcgi_pass  172.17.0.4:9000;4.容器IP的查方法:docker inspect 容器ID或容器名 |grep ‘"IPAddress"‘docker inspect a0aecc07d1ce |grep ‘"IPAddress"‘

 

以上是关于Docker 容器和镜像使用的主要内容,如果未能解决你的问题,请参考以下文章

Linux修改docker镜像和容器的默认存储位置

使用阿里云容器服务Jenkins实现持续集成和Docker镜像构建

CentOS7修改Docker容器和镜像默认存储位置

Docker镜像制作和管理

使用docker容器运行Python程序

docker定义安装镜像容器