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 隔离容器的运行环境 ...
随机推荐
- Spring JDBC入门
Spring将替我们完成所有使用JDBC API进行开发的单调乏味的.底层细节处理工作. 操作JDBC时Spring可以帮我们做这些事情: 定义数据库连接参数,打开数据库连接,处理异常,关闭数据库连接 ...
- vmware centos7系统虚拟机复制到其他电脑后不能联网问题解决
虚拟机复制到别的电脑后,无法联网 使用ifconfig命令,没有显示出IP4的网址信息(显示ens33文件配置信息) 在网上查看相关资料,大部分说是mac地址不一致导致 如果配置了mac地址,那么在/ ...
- 【RF库XML测试】Get Element Text
Name:Get Element TextSource:XML <test library>Arguments:[ source | xpath=. | normalize_whitesp ...
- CentOS下安装vsftpd
因为FTP的端口是 两个,一个是固定21端口,还有一个任意端口的数据通道.关键是任意端口不好搞. 首先在vsftpd的配置文件中设置 任意端口的范围 [root@localhost root]# vi ...
- drawCall_01
在屏幕上渲染物体,引擎需要发出一个绘制调用来访问图形API(iOS系统中为OpenGL ES).每个绘制调用需要进行大量的工作来访问图形API,从而导致了CPU方面显著的性能开销. Unity在运 ...
- DRBD架构详解(原创)
DRBD概述Distributed Replicated Block Device(DRBD)是一种基于软件的,无共享,复制的存储解决方案,在服务器之间的对块设备(硬盘,分区,逻辑卷等)进行镜像.DR ...
- openjdk源码阅读导航
转自:http://rednaxelafx.iteye.com/blog/1549577 这是链接帖.主体内容都在各链接中. 怕放草稿箱里过会儿又坑掉了,总之先发出来再说…回头再慢慢补充内容. 先把I ...
- iOS中UIView翻转效果实现
本文转载至 http://baishiyun.blog.163.com/blog/static/13057117920148228261747/ 新建一个view-based模板工程,在ViewCo ...
- Java的I/O操作
一.概述 Java的IO支持通过java.io包下的类和接口来完成,在java.io包下主要有包括输入.输出两种IO流,每种输入输出流又可分为字节流和字符流两大类.从JDK1.4以后,Java在jav ...
- Jquery-无法有效获取当前窗口高度
今天碰到个很奇怪的事情,那就是滚动条往下滚动时候没有触发提示,反而是往上滚动的时候,触发了提示.百思不得其解,尤其是拿了美工大大的切图过来,一点问题都没有. 那么就进行console.log输出查看了 ...