【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地址访问)

相关推荐
雪落漂泊6 小时前
Liunux进程(七):程序控制篇(中)
linux·运维·windows
分布式存储与RustFS6 小时前
工作流脚本和依赖 JAR 散在各节点本地盘:用 DolphinScheduler 资源中心接到 RustFS
运维·云原生·开源·对象存储·分布式存储·s3·性能基准
俊俊几年的6 小时前
动态规划(Dynamic Programming)详解:从入门到 LeetCode Hot 100
linux·c++·算法·leetcode·嵌入式·动态规划·c
星恒随风15 小时前
MySQL 从零入门(五):MySQL 内置函数详解——日期、字符串、数学函数与实战案例
linux·数据库·笔记·sql·mysql
唐墨12320 小时前
linux kernel 比较数据大小的宏定义
linux·算法
程序开发阿元20 小时前
密码不进工具:一个独立开发者的服务器凭据管理办法
linux·ssh
分布式存储与RustFS1 天前
群晖 NAS 被 C3RB3R 锁了:本地备份一起被加密,RustFS 对象锁为什么删不掉
运维·云原生·开源·对象存储·分布式存储·s3·性能基准
真好啊又活了一天1 天前
服务器和虚机配置IPV6
运维·服务器·github
zixu_star1 天前
定时任务是什么?从日常自动化到 AI 应用,软件如何自动执行任务?
运维·人工智能·自动化
AR-26710-1 天前
Linux Day33——定时任务+lvm
linux·运维