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 隔离容器的运行环境 ...
随机推荐
- windows 下获取当前进程的线程数量
#include <TlHelp32.h> int get_thread_amount() { ; ]; PROCESSENTRY32 pe32; pe32.dwSize = sizeof ...
- cocos2d-x 3.0 在C++中调用lua函数
代码用的是<cocos2d-x 3.0 在lua中调用自定义类>中的代码. 在上篇的基础上进行扩充. 写lua函数 local function process_packet(user_d ...
- 第1章 Ansible 简介
1. Ansible 优点 (1) 易读的语法:Ansible使用playbook作为配置管理脚本,playbook是基于YAML开发的,是一种易于读写的数据格式(2) 远程主机无须安装任何依赖:被A ...
- Studio更新
其实最主要的是下面三个步骤: 1.更新As工程为3.0 2.必须升级gradle到4.0以上 3.buildToolsVersion升级到26.0.0 4.在gradle.properties中配置版 ...
- c语言学习笔记---符号
专题2.符号的技巧: 1) 注释符与转义符 vC语言中的接续符(\)是指示编译器行为的利器: 接续符的使用:编译器会将反斜杠剔除,嗯在反斜杠后面的字符自动解到前面的一行. 在接续单词时,反斜杠之后不能 ...
- 说说C与汇编之间的互相联系(转)
在嵌入式系统开发中,目前使用的主要编程语言是C和汇编,C++已经有相应的编译器,但是现在使用还是比较少的.在稍大规模的嵌入式软件中,例如含有OS,大部分的代码都是用C编写的,主要是因为C语言的结构比较 ...
- Servlet基本用法(二)接口和类
一.摘要 本文主要简单介绍开发Servlet需要用到的接口和类. 二.ServletRequest和ServletResponse接口 当客户请求到来时,由容器创建一个ServletRequest对象 ...
- ngnix +tomcat7 简单配置
1.下载tomcat7 修改conf 文件夹下的server.xml文件 1.<Server port="8205" shutdown="SHUTDOWN" ...
- LeetCode 20 Valid Parentheses (括号匹配问题)
题目链接 https://leetcode.com/problems/valid-parentheses/?tab=Description Problem: 括号匹配问题. 使用栈,先进后出! ...
- win10 与linux mint双系统 只能进入mint而无法进入windows的解决方案
新购买了一块ssd,和以前的hdd硬盘一起装双系统:win10和mint ssd:win10 sdb1 sdb2 sdb3 sda2 hdd: mint sda1 ...