Docker基本命令与使用 —— Docker容器(一)
一.容器的基本操作
1. 启动容器
docker run IMAGE [COMMAND] [ARG...]
run 在新容器中执行命令
2. 启动交互式容器
docker run -i -t IMAGE /bin/bash
-i --interactive=true|false 默认是false
docker run -i -t ubuntu /bin/bash
ps -ef
exit(退出)
3.查看容器
docker ps [-a][-l] 默认显示正在运行中的容器
-a 列出所有的容器
$ docker inspect [容器id/容器Name]
4.自定义容器名
docker run --name=自定义名 -i -t IMAGE /bin/bash
eg: docker run --name=container01 -i -t ubuntu /bin/bash
5.重新启动停止的容器
docker start [-i] 容器名(-i已交互的方式)
eg: docker start -i container01
6.删除停止的容器
docker rm 容器名/id (只能删除停止的容器)
二.守护式容器
1.以守护形式运行容器
docker run -i -t IMAGE /bin/bash
Ctrl+P Ctrl+Q (后台运行)
docker ps 可以查看到正在运行的容器
2.附加到运行中的容器
docker attach 容器名/id
3.启动守护式容器
docker run -d 镜像名 [COMMAND][ARG...]
eg: $ docker run --name dc1 -d ubuntu /bin/sh -c "while true;do echo hello world;sleep 1;done"
4. 查看容器日志
docker logs [-f] [-t] [--tail] 容器名
-f --follows=true|false 默认为false (一直跟踪日志的变化,并返回结果)
5.查看容器内进程
docker top 容器名
6.在运行中的容器内启动新进程
docker exec [-d] [-i] [-t] 容器名 [COMMAND] [ARG...] (与run命令相似)
7.停止守护式容器
docker stop 容器名 (会等待容器的停止)
docker kill 容器名 (直接停止容器)
8.使用Docker帮助文件
man docker-run
man docker-logs
man docker-top
man docker-exec
...
三.在容器中部署静态站点
1.设置容器的端口映射
- containerPort 只制定容器的端口,宿主机的端口随机映射
- hostPort:containerPort 同时制定宿主机端口和容器端口,一一对应
- ip::containerPort
- ip:hostPort:containerPort
2.Nginx部署流程
- 创建映射80端口的交互式容器
- 安装Nginx
- 安装文本编辑器vim
- 创建静态页面
- 修改Nginx配置文件
- 运行Nginx
- 验证网站访问
docker run -p --name web -i -t ubuntu /bin/bash
apt-get install -y nginx
apt-get install -y vim
mkdir -p /var/www/html
cd /var/www/html
vim index.html
<html>
<head>
<title>Nginx in docker</title>
</head>
<body>
<h1>Hello, I'm website in docker!</h1>
</body>
</html>
whereis nginx
vim /etc/nginx/sites-enabled/default
修改root 的值为静态网站根目录(/var/www/html)
cd / 返回根目录
nginx 运行nginx
ps -ef 查看nginx进程
Ctrl+P Ctrl+Q 退出
- 通过宿主机的ip地址查看
- 通过容器的ip地址查看
Docker基本命令与使用 —— Docker容器(一)的更多相关文章
- Docker基本命令与使用 —— Docker容器的网络连接(四)
一.Docker容器的网络基础 通过ifconfig查看docker0的网络设备,docker守护进程就是通过docker0为docker的容器提供网络连接的各种服务. docker0是Linux虚拟 ...
- Docker基本命令与使用 —— Docker镜像与仓库(二)
一.查看和删除镜像 1.Docker Image 镜像 容器的基石 层叠的只读文件系统 联合加载(union mount) (存储位置 /var/lib/docker) docker info 2.列 ...
- Docker 基本命令和使用
Docker 基本命令 systemctl start docker : 启动 Docker systemctl stop docker : 停止 Docker systemctl restart d ...
- 15个Docker基本命令及用法
Docker入门教程:15个Docker基本命令及用法 本文中,我们将学习15个Docker命令以及命令的用法和功能,并通过实践学习它是如何工作的. AD:51CTO 网+ 第十二期沙龙:大话数据 ...
- Docker 入门 第二部分: 容器
目录 Docker 入门 第二部分: 容器 先决条件 介绍 你的新开发环境 使用 Dockerfile 定义一个容器 Dockerfile 应用本身 requirements.txt app.py 构 ...
- 七、docker基本命令
Docker 基本命令 docker的基本命令 docker version :查看docker的版本号,包括客户端.服务端.依赖的Go等 [root@centos7 ~]# docker versi ...
- docker系列四之docker镜像与容器的常用命令
docker镜像与容器的常用命令 一.概述 docker的镜像于容器是docker中两个至关重要的概念,首先给各位读者解释一下笔者对于这两个概念的理解.镜像,我们从字面意思上看,镜子里成像,我们人 ...
- docker进入后台运行的容器
转载请注明出处 我们运行docker容器的时候,使用了-d参数,把容器在后台运行后. 这个时候,我们使用docker ps命令,我们就可以知道哪些程序在后台运行. 我们要怎么进入到docker ...
- 理解Docker(3):Docker 使用 Linux namespace 隔离容器的运行环境
本系列文章将介绍Docker的有关知识: (1)Docker 安装及基本用法 (2)Docker 镜像 (3)Docker 容器的隔离性 - 使用 Linux namespace 隔离容器的运行环境 ...
随机推荐
- mysql 字符串转数据丢失精度,mysql转换丢失精度,mysql CAST 丢失精度
mysql 字符串转数据丢失精度,mysql转换丢失精度,mysql CAST 丢失精度 =============================== ©Copyright 蕃薯耀 2017年9月1 ...
- Linux应急响应入侵排查思路
0x00 前言 当企业发生黑客入侵.系统崩溃或其它影响业务正常运行的安全事件时,急需第一时间进行处理,使企业的网络信息系统在最短时间内恢复正常工作,进一步查找入侵来源,还原入侵事故过程,同时给出解 ...
- Discuz!X 3.4 任意文件删除漏洞复现过程(附python脚本)
今天看下群里在讨论Discuz!X 3.4 任意文件删除漏洞,自己做了一些测试,记录一下过程.结尾附上自己编写的python脚本,自动化实现任意文件删除. 具体漏洞,请查看 https://paper ...
- 第二十篇:不为客户连接创建子进程的并发回射服务器(poll实现)
前言 在上文中,我使用select函数实现了不为客户连接创建子进程的并发回射服务器( 点此进入 ).但其中有个细节确实有点麻烦,那就是还得设置一个client数组用来标记select监听描述符集中被设 ...
- C++ template —— template metaprogram(九)
metaprogramming含有“对一个程序进行编程”的意思.换句话说,编程系统将会执行我们所写的代码,来生成新的代码,而这些新代码才真正实现了我们所期望的功能.通常而言,metaprogrammi ...
- .net页面生命周期【转】
.Net 页面生命周期IIS 所收到的对某 Microsoft ASP.NET 页面的每个请求都被移交给 ASP.NET HTTP 管线.HTTP 管线由一系列托管对象组成,这些对象按顺序处理该请求, ...
- thinkphp3.2 实现上一篇和下一篇
现在在做一个能够在内容页点击上一篇可以看到上一篇,点击下一篇可以看到下一篇. 首先http://www.mmkb.com/zhendao/index/news_show?code=98 现在code= ...
- 脚本学习 game.sh
#!/bin/bash #game_error.sh ]]; then #$#表示参数个数 -lt小于 echo "Usage: game_error.sh time[20170710]&q ...
- 日记整理---->2016-11-25
2017-03-02开始,记录的一些知识点.岁月长,三更漏.漫漫回廊,依稀人空瘦.借酒消愁入断肠,倚剑笑我,我独自寻殇. 一.vx中的v-bind和{{}}的区别 <td class=" ...
- 让某个软件无法被操作员最小化(C#演示)
有一次在生产线上, 有一个显示激光轮廓的软件被操作员最小化了, 结果悲剧了, 轮廓图像都抓不到了. 原先的设想的操作流程是这个软件是不能被操作员最小化的, 但可惜不能指望员工这么能守规矩. 看来只能在 ...