【Docker】容器

目录

[1. 容器启动](#1. 容器启动)

[2. 容器启动/重启/停止](#2. 容器启动/重启/停止)

[3. 进入容器](#3. 进入容器)

[4. 容器查询](#4. 容器查询)

[5. docker 镜像的构建](#5. docker 镜像的构建)

[方式一:docker 容器 commit](#方式一:docker 容器 commit)

[方式二:Dockerfile 定制镜像](#方式二:Dockerfile 定制镜像)


1. 容器启动

复制代码
docker run --it/-d --p/P --name imageID/name

2. 容器启动/重启/停止

bash 复制代码
docker start
docker restart
docker stop

3. 进入容器

复制代码
# 查看容器id
docker ps
复制代码
# 容器ID:057572c53888
docker attach containerID 
docker exec -it containerID /bin/bash

4. 容器查询

复制代码
docker inspect containerID
复制代码
docker top containerID
复制代码
docker diff containerID

5. docker 镜像的构建

方式一:docker 容器 commit

复制代码
docker commit

1、运行docker

复制代码
docker run --name webserver -d -p 80:80 nginx

2、进入容器的方法

复制代码
# 方式1
docker attach webserver

ctrl+p、q退出!!!!

复制代码
# 方式2
docker exec -it webserver bash

docker exec -it 容器id bash -c "echo 
'<h1>Hello,I am your container.</h1>' > /usr/share/nginx/html/index.html"

3、提交docker

复制代码
docker commit --author "szzz" --message "chang index" webserver nginx:v2

4、运行docker

复制代码
docker run --name webserver2 -d -p 81:80 nginx:v2

5、查看历史记录

复制代码
docker history nginx:v2

6、测试:http://192.168.9.10:81 (用该虚拟机的ip地址)

方式二:Dockerfile 定制镜像

确保 docker 主机可以上网

复制代码
docker build

Dockerfile 的编写方法

1、 网络确认

复制代码
ping www.baidu.com

2、准备文件夹和 Dockerfile 文件

复制代码
mkdir static_web # 创建文件夹

cd static_web # 进入文件夹

touch Dockerfile # 创建一个 Dockerfile 文件

3、编写 Dockerfile

vi Dockerfile 编辑文件,写入镜像代码

复制代码
# Version: 0.0.1
FROM ubuntu:14.04
MAINTAINER James Turnbull "james@example.com"
RUN apt-get update && apt-get install -y nginx
RUN echo 'Hi, I am in your containe' > /usr/share/nginx/html/index.html
EXPOSE 80
CMD ["nginx", "-g", "daemon off;"]

4、构建镜像

复制代码
docker build -t="jamur01/static_web" 

5、容器测试

复制代码
docker run -itd --name test -p 8080:80 jamur01/static_web

http://192.168.9.10:8080 (根据自己的虚拟机ip地址访问)

相关推荐
qetfw1 小时前
CentOS 7 基础环境配置
linux·运维·centos
天空'之城1 小时前
Linux 系统编程 21:守护进程与日志系统全解
linux·系统编程·日志系统·守护进程
jieyucx2 小时前
Docker 入门第二阶段:掌握日常命令
运维·docker·容器
l1t2 小时前
用split命令恢复被wget -c命令误追加的zip压缩包
linux
随性而行3602 小时前
微信API接口与AI自动化:开发者的实现思路
运维·服务器·开发语言·人工智能·微信·自动化
有毒的教程2 小时前
Kubernetes进阶实战教程(生产落地完整版)
云原生·容器·kubernetes
辉灰笔记3 小时前
MySQL8 意外关机/误移data目录导致服务启动失败 PID报错/权限报错 修复文档
linux·数据库·mysql·centos
鱼听禅3 小时前
Ubuntu学习笔记-安装docker容器
学习·ubuntu·docker
胖兔纸24 小时前
OpenStack 1.7.2 & Ceph 9.2.1 运维命令
运维·ceph·openstack
不会C语言的男孩4 小时前
Docker 在嵌入式设备中的常用玩法
运维·docker·容器