0
点赞
收藏
分享

微信扫一扫

766. 托普利茨矩阵

源码之路 04-06 10:30 阅读 1

安装部署

一、查询版本信息

命令说明
docker version查看服务器与客户端版本
docker info查看docker服务配置信息

二、安装部署

官网地址:Install Docker Engine | Docker Docs

1、卸载旧的版本

sudo yum remove docker \
                  docker-client \
                  docker-client-latest \
                  docker-common \
                  docker-latest \
                  docker-latest-logrotate \
                  docker-logrotate \
                  docker-engine

2、建立仓库

# 安装Docker所需的工具包
[root@test1 ~]# sudo yum install -y yum-utils
# 建立Docker仓库
[root@test1 ~]# sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo

3、安装Docker引擎

[root@test1 ~]# sudo yum install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin

4、启动Docker

[root@test1 ~]# sudo systemctl start docker

5、验证DockerEngine安装是否成功

[root@test1 ~]# sudo docker run hello-world
... ...
[root@test1 ~]# docker ps -a 
CONTAINER ID   IMAGE         COMMAND    CREATED              STATUS                          PORTS     NAMES
0e9edb4c528c   hello-world   "/hello"   About a minute ago   Exited (0) About a minute ago             ecstatic_johnson

镜像管理

一、概述

  • 镜像是创建容器的核心
  • 镜像使用CoW技术
  • 镜像采用分层设计
  • 镜像始终都是只读的

二、如何创建镜像

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

三、获取镜像

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

从官方下载较慢,可以使用国内的镜像站加速

添加配置文件:/etc/docker/daemon.json

{

    "registry-mirrors": ["这里配置镜像加速器地址"],

    "insecure-registries": [ ]

}

1、镜像加速器

[root@test1 ~]# mkdir -p /etc/docker
[root@test1 ~]# tee /etc/docker/daemon.json << EOF
> {
>     "registry-mirrors": ["https://docker.mirrors.ustc.edu.cn"],
>     "insecure-registries":[]
> }
> EOF
[root@test1 ~]# systemctl restart docker
[root@test1 ~]# docker info 
... ...
Insecure Registries:
  127.0.0.0/8
 Registry Mirrors:
  https://docker.mirrors.ustc.edu.cn/
 Live Restore Enabled: false

四、镜像管理命令

镜像管理命令说明
docker images查看本机镜像
docker pull 镜像名称:标签下载镜像
docker save 镜像名称:标签 -o 文件名备份镜像为tar包
docker load -i 备份文件名称导入备份的镜像文件
docker history 镜像名称:标签查看镜像的制作历史
docker tag 镜像ID:标签 镜像名称:新的标签创建新的镜像名称和标签
docker rmi 镜像名称:标签删除镜像(必须先删除该镜像启动的所有容器)

五、镜像的备份与恢复

1、指定镜像的方法

每一个镜像都对应唯一的镜像 id

镜像名称 + 标签 == 唯一

每一个镜像都有标签,默认标签 latest

我们在调用镜像的时候,如果没有指定标签也是 latest

2、备份镜像(导出镜像)

docker save 镜像名称:镜像标签 -o 文件名(tar格式)

3、恢复镜像(导入镜像)

docker load -i 备份文件名称

Docker容器管理

一、创建容器

二、容器管理命令

容器管理命令说明
docker run -it(d) 镜像名称:镜像标签创建容器
docker ps [-a]查看运行容器的信息 [所有容器]
docker inspect 镜像名称|容器名称查询 镜像|容器 的详细信息
docker start|stop|restart 容器id启动、停止、重启容器
docker exec -it 容器id 命令在容器内执行命令
docker cp 路径1 路径2拷贝文件:路径格式(本机路径、容器ID/路径)
docker rm 容器ID

删除容器

docker logs 容器ID查看容器日志

镜像与服务

一、自定义镜像

  • 镜像采用分层设计
  • 创建读写层
  • 修改配置
  • 重新打包

使用现有镜像启动容器,在该容器基础上修改

使用commit制作新镜像

# 使用基础镜像创建一个容器
[root@test1 ~]# docker run -itd --name linux rockylinux:8.5
# 删除容器内的Yum配置文件
[root@test1 ~]# docker exec -it linux rm -rf /etc/yum.repos.d
# 拷贝宿主机的Yum配置文件到容器内
[root@test1 ~]# docker cp /etc/yum.repos.d linux:/etc/
# 在容器内安装工具软件包
[root@test1 ~]# docker exec -it linux dnf install -y net-tools vim-enhanced tree bash-completion iproute procps-ng psmisc
# 清理缓存文件
[root@test1 ~]# docker exec -it linux yum clean all
# 停止容器
[root@test1 ~]# docker stop linux 
# 把容器制作成镜像
[root@test1 ~]# docker commit linux linux:latest
# 查看新制作的镜像
[root@test1 ~]# docker images
REPOSITORY    TAG       IMAGE ID       CREATED          SIZE
linux         latest    71662af1927a   52 seconds ago   249MB
# 删除制作镜像的容器
[root@test1 ~]# docker rm  linux

容器内部署应用

部署apache服务

# 删除所有容器
[root@test1 ~]# docker rm -f $(docker ps -aq)
# 创建一个名为 myweb 的容器
[root@test1 ~]# docker run -it --rm --name myweb linux:latest
# 在容器内安装部署 apache
[root@43945bfa50c8 /]# dnf install -y httpd
[root@43945bfa50c8 /]# echo "Hello World ." >/var/www/html/index.html
[root@43945bfa50c8 /]# cat /usr/lib/systemd/system/httpd.service
[root@43945bfa50c8 /]# /usr/sbin/httpd -DFOREGROUND
# 在另一个终端完成访问验证

为apache添加解析php文件支持

# ctrl + c 终止 httpd 服务运行
[root@43945bfa50c8 /]# dnf install -y php
[root@43945bfa50c8 /]# vim /etc/httpd/conf.modules.d/00-mpm.conf
11: LoadModule mpm_prefork_module ... ... # 去掉注释 
17: # LoadModule mpm_event_module ... ... # 注释配置 
[root@43945bfa50c8 /]# /usr/sbin/httpd -DFOREGROUND
# 服务不要关闭,在其他终端完成测试

验证配置

[root@test1 ~]# docker cp info.php myweb:/var/www/html/info.php
[root@test1 ~]# curl http://172.17.0.2/info.php
举报

相关推荐

0 条评论