1. 创建 Apache 容器

[root@centos7 ~]# docker run -d -p : httpd
// -d: 放入后台运行
// -p: 指定端口映射关系(第一个为本地端口、第二个为容器端口)

2. 创建 Nginx 容器

[root@centos7 ~]# docker run -d -p : nginx

// 将本地的 8080 端口映射到容器的 80 端口;

3. 查看容器

[root@centos7 ~]# docker ps -a

// docker ps 命令时查看运行中的容器
// -a 选项是查看所以容器(不论容器属于什么状态)

4. 测试容器是否启动成功

测试HTTP服务80端口:

测试nginx服务8080端口:

5. 查看 docker 标准输出

[root@centos7 ~]# docker ps -a
[root@centos7 ~]# docker logs “容器ID”

6. 停止和启动容器

# 查看容器ID:
[root@centos7 ~]# docker ps -a
# 停止容器,使用容器ID来指定:
[root@centos7 ~]# docker stop “容器ID”
# 再次查看容器运行状态:
[root@centos7 ~]# docker ps -a # 启动已停止的容器,ID来指定:
[root@centos7 ~]# docker start “容器ID”
# 再次查看容器运行状态:
[root@centos7 ~]# docker ps -a

7. 删除容器

# 查看容器:
[root@centos7 ~]# docker ps -a
# 强制删除容器(谨慎使用该命令)
[root@centos7 ~]# docker rm -f “容器ID”

8. 查询端口映射

[root@centos7 ~]# docker port “容器ID”
/tcp -> 0.0.0.0:

9. 容器为任务而生

[root@centos7 ~]# docker run httpd echo "www"
www
[root@centos7 ~]# docker ps -a

10.进入容器修改内容

[root@centos7 ~]# docker exec -it “容器ID” /bin/bash
root@f1507b05b31c:/usr/local/apache2# # 已经入容器

root@f1507b05b31c:/usr/local/apache2/htdocs# pwd
/usr/local/apache2/htdocs
root@f1507b05b31c:/usr/local/apache2/htdocs# echo Hello > index.html

注:容器本身是个精简化的东西,未自带vi和vim命令,在未安装之前我们简单通过重定向进入测试。

测试:

11. 查询容器详细信息

[root@centos7 ~]# docker inspect “容器ID”

12. 复制本地文件到容器中

[root@centos7 ~]# docker cp /etc/profile 容器ID:/root
[root@centos7 ~]# docker exec -it f15 /bin/bash // “f15” 是容器的省略ID

13. 本地目录跟容器目录挂载

创建本地挂载目录:

[root@centos7 ~]# mkdir /root/httpd_data

创建容器:

[root@centos7 ~]# docker run -d -p : -v /root/httpd_data:/usr/local/apache2/htdocs  --privileged=true  httpd
// -v 本地目录/root/httpd_data 容器目录/usr/local/apache2/htdocs
// --privileged=true 关闭安全权限,否则你容器操作文件夹没有权限

测试目录是否挂载成功:

# 在本地挂载的目录下创建一个文件,我这里创建的是HTML文件
[root@centos7 ~]# cd httpd_data/
[root@centos7 httpd_data]# cat test.html
Test

进入容器目录查看是否已创建:

# 进入容器
[root@centos7 httpd_data]# docker exec -it /bin/bash # 进入挂载目录
root@246f1a196a9b:/usr/local/apache2# ls
bin build cgi-bin conf error htdocs icons include logs modules
root@246f1a196a9b:/usr/local/apache2# cd htdocs/ # 查看文件内容
root@246f1a196a9b:/usr/local/apache2/htdocs# ls
test.html
root@246f1a196a9b:/usr/local/apache2/htdocs# cat test.html
Test # 完成容器目录跟本地目录的挂载!

这是一些Docker的简单而常用的命令,更多命令可以使用“--help”来了解使用。

Docker 创建容器以及管理命令(三)的更多相关文章

  1. docker 创建容器与管理容器

    创建容器的选项 [root@mast ~]# docker container run --help Usage: docker container run [OPTIONS] IMAGE [COMM ...

  2. Docker 创建容器 查看容器状态 - 三

    Docker 创建容器 1.拉取镜像 默认是 docker.io 仓最新镜像 docker pull tomcat 2.运行一个服务容器 docker run -d -p 0.0.0.0:18080: ...

  3. Docker 共有 13 个管理命令和 41 个通用命令,以下是常用 Docker 命令列表

    开发人员一直在努力提高 Docker 的使用率和性能,命令也在不停变化.Docker 命令经常被弃用,或被替换为更新且更有效的命令,本文总结了近年来资深专家最常用的命令列表并给出部分使用方法. 目前, ...

  4. docker 创建容器的时候的坑

    其实这个题目的话,对于我后面陈述的问题发生的本身并没有太多的联系,但是因为是在docker创建容器的操作之内发生的,所以记录以下 因为网上有些文章有些作者喜欢使用git的命令窗体,说实在的,公司里面用 ...

  5. docker 创建容器时指定容器ip

    Docker创建容器时默认采用bridge网络,自行分配ip,不允许自己指定. 在实际部署中,我们需要指定容器ip,不允许其自行分配ip,尤其是搭建集群时,固定ip是必须的. 我们可以创建自己的bri ...

  6. docker 创建容器时遇到的坑

    坑一.时区问题 在创建系统镜像时,比如centos,会默认最小安装,并且时区默认的是UTC 所以在下好centos的原始镜像后,最好再重新构建一个新的镜像 # 命令 docker pull cento ...

  7. 关于docker创建容器报错-docker: Error response from daemon: runtime "io.containerd.runc.v2" binary not installed

    今天在对一台服务器(docker相关的业务服务器)进行OS补丁时,默认使用的 yum update -y 对所有的安装包进行了升级 升级完成后,让应用方检查确认应用及功能是否一切正常,如果不正常,严重 ...

  8. docker 清理容器的一些命令,彻底或选择清理

    越往下的,越要慎重 列出无用的卷 docker volume ls -qf dangling=true 清理无用的卷,容器,镜像 docker volume rm $(docker volume ls ...

  9. Docker创建容器

    容器是镜像的一个运行实例,是基于镜像运行的轻量级环境,是一个或者一组应用. 怎样创建容器?将容器所基于的镜像名称传入即可,Docker会从本地仓库中寻找该镜像,如果本地仓库没有,则会自动从远程仓库中拉 ...

随机推荐

  1. localStorage,sessionStorage的使用

    最近因为项目上需要使用到客户端存储,所以稍微研究了一下,以下说说自己的理解和使用经验 1.调用方法相同 各自都包含以下几种操作: //根据key获取对应的值; window.sessionStorag ...

  2. Python+Pandas 读取Oracle数据库

    Python+Pandas 读取Oracle数据库 import pandas as pd from sqlalchemy import create_engine import cx_Oracle ...

  3. selenium+python自动化笔记之一

    一.webdriver的API与定位元素 元素定位核心部分 元素名称 webdriver API 说明 id find_element_by_id() id定位 name find_element_b ...

  4. 4.5Python数据类型(5)之列表类型

    返回总目录 目录: 1.列表的定义 2.列表的常规操作 3.列表的额外操作 (一)列表的定义: 列表的定义 [var1, var2, --, var n ] # (1)列表的定义 [var1, var ...

  5. Ubuntu 12.10 Tty (字符终端) 显示中文,和字体大小设置

    Tty通过修改默认的中文编码字符,和安装zhcon都无法显示中文.可安装fbterm来显示中文,命令:sudo apt-get install fbterm安装即可,进入Tty: (Ctrl+Alt+ ...

  6. 【Beta Scrum】冲刺! 1/5

    0. Alpha阶段遗留问题 项目 功能/页面 功能/页面 WEB端 图片在线编辑 文件上传跨域问题 app端 作业展示页面 1. Beta计划表 功能 说明 web端 登录 完成web端登录页面及功 ...

  7. SAP CRM 自定义控制器与数据绑定

    当用户从视图离开时,视图将失去它的数据.解决这个问题,需要引入自定义控制器(Custom Controller)(译者注:SAP CRM自定义端中,不同地方的Custom Controller会翻译为 ...

  8. EBS-新增和更新价目表行

    版权声明:本文为博主原创文章.未经博主同意不得转载. https://blog.csdn.net/gh320/article/details/36666133  新增和更新价目表行 --目的:在已 ...

  9. nodejs中async使用

    waterfall , parallel ,  series  ,  eachSeries //var async = require('async'); /*** *① * 串行有关联 执行每个函数 ...

  10. P2626 斐波那契数列(升级版)(合数的质数分解, 大数为素数的概率十分小的利用)

    题目背景 大家都知道,斐波那契数列是满足如下性质的一个数列: f(1)=1f(1) = 1 f(1)=1 f(2)=1f(2) = 1f(2)=1 f(n)=f(n−1)+f(n−2)f(n) = f ...