Docker的基本使用 (3)

image-20210815164254980

可以看到其配置是外部导入的,方便分模块化的管理。

(5)查看默认配置文件default.conf

cat /etc/nginx/conf.d/default.conf

image-20210815164526860

可以看到其欢迎页的目录是在/usr/share/nginx/html文件中。

(6)修改本地上传的文件名为html,并复制到Nginx容器的/usr/share/nginx目录中

mv 本地文件名 html
docker cp html mynginx:/usr/share/nginx 3.4 Redis部署

(1)拉取镜像

docker pull redis

(2)创建容器

docker run -di --name=myredis -p 6379:6379 redis

(3)进入容器并通过 redis-cli 连接测试使用 redis 服务。

docker exec -it myredis /bin/bash

image-20210815170856069

4. 备份与迁移 4.1 容器保存为镜像 docker commit 容器名称 镜像名称
例:docker commit mynginx mynginx_i 4.2 镜像备份

将镜像保存为文件

docker save -o 文件名 镜像名
例:docker save -o mynginx.tar mynginx_i

-o:output

4.3 镜像恢复与迁移

首先我们先删除掉自己创建的mynginx_i镜像,然后执行此命令进行恢复

docker load -i 文件名
例:docker load -i mynginx.tar

-i:输入的文件

5. Dockerfile 5.1 什么是Dockerfile

Dockerfile是由一系列命令和参数构成的脚本,这些命令应用于基础镜像并最终创建一个新的镜像。

1、对于开发人员:可以为开发团队提供一个完全一致的开发环境; 2、对于测试人员:可以直接拿开发时所构建的镜像或者通过Dockerfile文件构建一个新的镜像开始工作了; 3、对于运维人员:在部署时,可以实现应用的无缝移植。

5.2 常用命令 命令作用
FROM image_name:tag   定义了使用哪个基础镜像启动构建流程  
MAINTAINER user_name   声明镜像的创建者  
ENV key value   设置环境变量 (可以写多条)  
RUN command   是Dockerfile的核心部分(可以写多条)  
ADD source_dir/file dest_dir/file   将宿主机的文件复制到容器内,如果是一个压缩文件,将会在复制后自动解压  
COPY source_dir/file dest_dir/file   和ADD相似,但是如果有压缩文件并不能解压  
WORKDIR path_dir   设置工作目录  
6. 使用脚本创建 JDK8 镜像

(1) 创建目录

mkdir –p /usr/local/dockerjdk8

(2)下载 jdk-8u301-linux-x64.tar.gz 并上传到服务器(虚拟机)中的 /usr/local/dockerjdk8 目录

(3)创建文件 Dockerfile (文件名必须是Dockerfile)

vi Dockerfile

(4)在Dockerfile 中编辑内容

# 依赖镜像名称和ID
FROM centos:7
# 指定镜像创建者信息
MAINTAINER tanghuan
# 切换工作目录
WORKDIR /usr
RUN mkdir /usr/local/java
#ADD 是相对路径jar,把java添加到容器中
ADD jdk-8u301-linux-x64.tar.gz /usr/local/java/

# 配置java环境变量
ENV JAVA_HOME /usr/local/java/jdk1.8.0_301
ENV JRE_HOME /usr/local/java/jdk1.8.0_301/jre
ENV PATH $JAVA_HOME/bin:$PATH

(5)执行命令构建镜像

docker build -t \'jdk:1.8\' .

-t:表示镜像名:标签

.:表示在当前目录下找 Dockerfile 文件

(5)查看镜像是否构建完成

docker images

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/zwdfsf.html