容器的概述及docker管理和简单的制作

docker的容器理念

docker的容器是没有系统的,是以应用为核心,对应用程序 ,运行时环境,软件依赖包都可以封装打包,部署的技术手段,

docker没有系统就节约了大量资源

部署简单,生态环境开发,任何人都可以部署应用

容器的概述:

容器:容器是一个运行在隔离环境中的程序

镜像:镜像是制作容器的模板,包含着创建容器的所需的所有文件和配置信息

仓库:是用来存储镜像的地方

在2015年,在docker的主导下,多家公司联合制定了“开放容器交互标准” (OCL),包含了

运行时标准(RUNTIME-SPEC)

容器镜像标准(IMAGE-SPEC)

镜像分发标准(DISTRIBUTION-SPEC)

镜像的概述:

镜像是创建容器的核心

镜像采用cow技术

镜像采用分成设计

镜像自始至终都是只读的

如何创建容器

首先使用cow为镜像创建一个读写层,容器在读写曾运行,这种方式可以让一个镜像创建无数个容器

镜像获取

镜像可以从官方下载也可以自己制作

官方镜像仓库https://hub.docker.com/


docker的一些命令及介绍

echo 'net.ipv4.ip_forward = 1' >> /etc/sysctl.conf  配置路由
sysctl -p  检测路由
dnf install -y docker-ce 
systemctl enable docker --now 
docker version  查看版本
docker info 查看配置信息
[root@docker ~]# vim /etc/docker/daemon.json
{
    "registry-mirrors": ["这里配置镜像仓库加速器地址"],
    "insecure-registries":[]
}
systemctl restart docker     
docker images                                                     查看本机镜像
docker history                                                     看镜像的制作历史
docker save  包名:标签  -o tar包名                   把镜像做成tar包
docker  load -i tar包名                                           把tar包做成镜像
docker run -it(d 放后台 )   镜像名:标签           制作容器
docker ps -a                                                          查看容器 
docker inspect 镜像名:标签                                     查看镜像详细信息
docker exec -it  容器名  命令                                  容器内非交互式命令
docker rm  容器id                                                    删除容器
docker  logs  容器id                                                查看容器日志
docker   tag   镜像id:标签    镜像名称:新标签
docker   rmi  镜像名:标签  删除镜像

docker commit 容器名   新镜像名:标签  镜像的制作
docker rm  -f  $(docker ps -aq)
容器部署应用
部署 apache 服务
# 删除所有容器
[root@docker ~]# docker rm -f $(docker ps -aq)
# 创建一个名为 myweb 的容器
[root@docker ~]# docker run -it --rm --name myweb mylinux:latest
#-----------------------------------------------------------
# 在容器内安装部署 apache
[root@a7f9d0c3e3e2 /]# dnf install -y httpd
[root@a7f9d0c3e3e2 /]# echo "Hello World ." >/var/www/html/index.html
[root@a7f9d0c3e3e2 /]# cat /usr/lib/systemd/system/httpd.service
[root@a7f9d0c3e3e2 /]# export LANG=C
[root@a7f9d0c3e3e2 /]# /usr/sbin/httpd -DFOREGROUND
# 在另一个终端完成访问验证
为 apache 添加解析 php 文件支持
# ctrl + c 终止 httpd 服务运行
[root@a7f9d0c3e3e2 /]# dnf install -y php
[root@a7f9d0c3e3e2 /]# vim /etc/httpd/conf.modules.d/00-mpm.conf
11: LoadModule mpm_prefork_module ... ... # 去掉注释 
17: # LoadModule mpm_event_module ... ... # 注释配置 
[root@a7f9d0c3e3e2 /]# /usr/sbin/httpd -DFOREGROUND
# 服务不要关闭,在其他终端完成测试
验证配置
# 在另一个终端拷贝 public/info.php 到 docker 主机
[root@docker ~]# docker cp info.php myweb:/var/www/html/
[root@docker ~]# curl http://172.17.0.2/info.php
<pre>
Array
(
    [REMOTE_ADDR] => 172.17.0.1
    [REQUEST_METHOD] => GET
    [HTTP_USER_AGENT] => curl/7.61.1
    [REQUEST_URI] => /info.php
)
php_host:   616e75df56ae
1229

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值