Docker 创建容器以及管理命令(三)
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 创建容器以及管理命令(三)的更多相关文章
- docker 创建容器与管理容器
创建容器的选项 [root@mast ~]# docker container run --help Usage: docker container run [OPTIONS] IMAGE [COMM ...
- Docker 创建容器 查看容器状态 - 三
Docker 创建容器 1.拉取镜像 默认是 docker.io 仓最新镜像 docker pull tomcat 2.运行一个服务容器 docker run -d -p 0.0.0.0:18080: ...
- Docker 共有 13 个管理命令和 41 个通用命令,以下是常用 Docker 命令列表
开发人员一直在努力提高 Docker 的使用率和性能,命令也在不停变化.Docker 命令经常被弃用,或被替换为更新且更有效的命令,本文总结了近年来资深专家最常用的命令列表并给出部分使用方法. 目前, ...
- docker 创建容器的时候的坑
其实这个题目的话,对于我后面陈述的问题发生的本身并没有太多的联系,但是因为是在docker创建容器的操作之内发生的,所以记录以下 因为网上有些文章有些作者喜欢使用git的命令窗体,说实在的,公司里面用 ...
- docker 创建容器时指定容器ip
Docker创建容器时默认采用bridge网络,自行分配ip,不允许自己指定. 在实际部署中,我们需要指定容器ip,不允许其自行分配ip,尤其是搭建集群时,固定ip是必须的. 我们可以创建自己的bri ...
- docker 创建容器时遇到的坑
坑一.时区问题 在创建系统镜像时,比如centos,会默认最小安装,并且时区默认的是UTC 所以在下好centos的原始镜像后,最好再重新构建一个新的镜像 # 命令 docker pull cento ...
- 关于docker创建容器报错-docker: Error response from daemon: runtime "io.containerd.runc.v2" binary not installed
今天在对一台服务器(docker相关的业务服务器)进行OS补丁时,默认使用的 yum update -y 对所有的安装包进行了升级 升级完成后,让应用方检查确认应用及功能是否一切正常,如果不正常,严重 ...
- docker 清理容器的一些命令,彻底或选择清理
越往下的,越要慎重 列出无用的卷 docker volume ls -qf dangling=true 清理无用的卷,容器,镜像 docker volume rm $(docker volume ls ...
- Docker创建容器
容器是镜像的一个运行实例,是基于镜像运行的轻量级环境,是一个或者一组应用. 怎样创建容器?将容器所基于的镜像名称传入即可,Docker会从本地仓库中寻找该镜像,如果本地仓库没有,则会自动从远程仓库中拉 ...
随机推荐
- python第三十五天-----作业完成--学校选课系统
选课系统:角色:学校.学员.课程.讲师要求:1. 创建北京.上海 2 所学校2. 创建linux , python , go 3个课程 , linux\py 在北京开, go 在上海开3. 课程包含, ...
- ext与xfs文件系统比较与总结
centos7.0开始默认文件系统是xfs,centos6是ext4,centos5是ext3 1.EXT2简介 EXT2第二代扩展文件系统(英语:second extended filesystem ...
- 【PAT】B1051 复数乘法(15 分)
要会使用math函数, 还要注意到用四舍五入的方法判断是否应该输出0.00 #include <math.h> #include<stdio.h> int main() { d ...
- C++基础算法学习——猜假币
有12枚硬币.其中有11枚真币和1枚假币.假币和真币重量不同,但不知道假币比真币轻还是重.现在,用一架天平称了这些币三次,告诉你称的结果,请你找出假币并且确定假币是轻是重(数据保证一定能找出来).例题 ...
- Deepin系统安装mysql教程及相关操作
Deepin系统安装mysql教程及相关操作 1.安装MySQL sudo apt-get install mysql-server,期间需要输入两次密码,root账户的密码. sudo apt-ge ...
- activiti5.14版本在线流程设计器的国际化中文支持
参考了前辈的一些国际化支持做法,加上自己对流程的一些理解,做了activiti5.14版本的国际化支持.发现有若干bug,比如属性设置弹出窗口里的grid里的下拉列表不支持显示中文(要修改oryx.d ...
- 【C++学习笔记】变量初始化规则
全局变量和静态变量会自动初始化为0,堆和栈中的局部变量不会初始化而拥有不可预测的值. C++保证了所有对象与对象成员都会初始化,但其中基本数据类型的初始化还得依赖于构造函数(或初始化列表). 成员变量 ...
- map && multimap
map map 的意思是映射.用法一般是 map<char, int>mp 按照我的理解,map 类似于一个高级的数组.前面的数据类型 char 相当于下脚标,而数组元素的值就对应 ...
- Servlet的生命周期以及在Spring MVC中调用流程
接触Web时间比较久,虽然知道Servlet的生命周期但是理解却还是不够,今天刚好debug代码涉及这块就利用余下时间研究了一下. Servlet的生命周期以及处理浏览器请求的过程.Servlet接口 ...
- Arduino IDE for ESP8266教程(二) 创建WIFI AP模式
创建WIFI热点 #include <ESP8266WiFi.h> void setup() { Serial.begin ( 115200 ); Serial.println(" ...