当前位置: 首页 > news >正文

深圳最新招聘seo排名查询

深圳最新招聘,seo排名查询,3g免费网站制作,江苏最新疫情公布你熟悉Docker吗? 文章目录 你熟悉Docker吗?快速入门Docker安装1.卸载旧版2.配置Docker的yum库3.安装Docker4.启动和校验5.配置镜像加速5.1.注册阿里云账号5.2.开通镜像服务5.3.配置镜像加速 部署MySQL镜像和容器命令解读 Docker基础常用命令数据卷数据卷…

你熟悉Docker吗?

文章目录

  • 你熟悉Docker吗?
    • 快速入门
      • Docker安装
        • 1.卸载旧版
        • 2.配置Docker的yum库
        • 3.安装Docker
        • 4.启动和校验
        • 5.配置镜像加速
          • 5.1.注册阿里云账号
          • 5.2.开通镜像服务
          • 5.3.配置镜像加速
      • 部署MySQL
      • 镜像和容器
      • 命令解读
    • Docker基础
      • 常用命令
      • 数据卷
        • 数据卷挂载
        • 本地目录挂载
      • 自定义镜像
        • 镜像结构
        • Dockerfile
        • 构建镜像
      • 容器网络
    • 项目部署
      • 部署Java
      • 部署前端
      • DockerCompose

Docker是用来快速构建、运行、管理应用的工具,是用来帮助部署项目及项目所需要依赖的组件。

快速入门

Docker安装

安装教程参考Docker官方文档

1.卸载旧版

首先如果系统中已经存在旧的Docker,则先卸载:

yum remove docker \docker-client \docker-client-latest \docker-common \docker-latest \docker-latest-logrotate \docker-logrotate \docker-engine
2.配置Docker的yum库

首先要安装一个yum工具

yum install -y yum-utils

安装成功后(出现 “完毕” 字样),执行命令,配置Docker的yum源:

yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
3.安装Docker

最后,执行命令,安装Docker

yum install -y docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
4.启动和校验
# 启动Docker
systemctl start docker# 停止Docker
systemctl stop docker# 重启
systemctl restart docker# 设置开机自启
systemctl enable docker# 执行docker ps命令,如果不报错,说明安装启动成功
docker ps
5.配置镜像加速

这里以阿里云镜像加速为例。

5.1.注册阿里云账号

首先访问阿里云网站注册一个账号。

5.2.开通镜像服务

在首页的产品中,找到阿里云的容器镜像服务

在这里插入图片描述

点击后进入控制台:

在这里插入图片描述

首次可能需要选择立刻开通,然后进入控制台。

5.3.配置镜像加速

找到镜像工具下的镜像加速器

在这里插入图片描述

页面向下滚动,即可找到配置的文档说明:

在这里插入图片描述

具体命令如下:

# 创建目录
mkdir -p /etc/docker# 复制内容,注意把其中的镜像加速地址改成你自己的
tee /etc/docker/daemon.json <<-'EOF'
{"registry-mirrors": ["https://xxxx.mirror.aliyuncs.com"]
}
EOF# 重新加载配置
systemctl daemon-reload# 重启Docker
systemctl restart docker

部署MySQL

先停掉虚拟机中的MySQL,确保虚拟机已经安装了Docker,且网络开通的情况下,执行下面的命令即可安装MySQL

docker run -d \--name mysql \-p 3306:3306 \-e TZ=Asia/Shanghai \-e MYSQL_ROOT_PASSWORD=123 \mysql

镜像和容器

  • 利用Docker安装应用时,Docker会自动搜索并下载应用镜像(image)。
  • 镜像不仅包含应用本身,还包含应用运行所需要的环境、配置、系统函数库。
  • Docker会在运行镜像时创建一个隔离环境,称为容器(container)。
  • 存储和管理镜像的服务就是镜像仓库DockerHub是目前最大的镜像仓库,其中包含各种常见的应用镜像

命令解读

  • docker run:创建并运行一个容器,-d是让容器在后台运行
  • --name mysql:给容器起个名字,必须唯一
  • -p 3306:3306:设置端口映射
  • -e KEY=VALUE:是设置环境变量
  • mysql:指定运行的镜像的名字
    • 镜像命名规范:一般分两部分组成:[repository]:[tag]repository是镜像名,tag是镜像的版本。没有指定tag时,默认是latest,代表最新版本的镜像

Docker基础

常用命令

Docker最常见的命令就是操作镜像、容器的命令,详见官方文档

在这里插入图片描述

命令说明
docker pull将远端镜像拉取到本地
docker images查看所有本地镜像
docker rmi删除指定镜像
docker build自定义构建镜像
docker save将打包镜像保存到本地
docker load加载镜像
docker push推送本地镜像到远端镜像仓库
docker run创建并运行容器
docker stop停止容器
docker start启动容器
docker rm删除容器
docker ps查看当前容器运行状态
docker logs查看容器日志
docker exec进入容器内部

数据卷

数据卷( volume ):是一个虚拟目录,是容器内目录与宿主机目录之间映射的桥梁。它将宿主机目录映射到容器内目录,方便操作容器内文件,或者方便迁移容器产生的数据

数据卷挂载
  • 在创建容器时,利用-v 数据卷名:容器内目录,完成挂载
  • 容器创建时,如果发现挂载的数据卷不存在时,会自动创建
命令说明
docker volume create创建数据卷
docker volume ls查看所有数据卷
docker volume rm删除指定数据卷
docker volume inspect查看某个数据卷的详情
docker volume prune清除数据卷
本地目录挂载
  • 在执行docker run命令时,使用-v 本地目录∶容器内目录,可以完成本地目录挂载
  • 本地目录必须以 “/”“./" 开头,如果直接以名称开头,会被识别为数据卷而非本地目录
    • -v mysql:/var/lib/mysql会被识别为一个数据卷叫 mysql
    • -v ./mysql:/var/lib/mysql会被识别为当前目录下的 mysql目录

自定义镜像

镜像中包含了应用程序所需要的运行环境、函数库、配置、以及应用本身等各种文件。这些文件分层打包而成,构建镜像的过程就是把上述文件打包的过程。

镜像结构
  • 入口( Entrypoint ):镜像运行入口,一般是程序启动的脚本和参数
  • 层( Layer ):添加安装包、依赖、配置等,每次操作都形成新的一层
  • 基础镜像( Baselmage ):应用依赖的系统函数库、环境、配置、文件等
Dockerfile

Dockerfile就是一个文本文件,其中包含一个个的指令(Instruction),用指令来说明要执行什么操作来构建镜像。将来Docker可以根据Dockerfile帮我们构建镜像。常见指令如下:

指令说明示例
FROM指定基础镜像FROM centos:6
ENV设置环境变量,可在后面指令使用ENV key value
COPY拷贝本地文件到镜像的指定目录COPY ./jrell.tar.gz /tmp
RUN执行Linux的shell命令,一般是安装过程的命令RUN tar -zxvf /tmp/jrell.tar.gz && EXPORTS path=/tmp/jrell:$path
EXPOSE指定容器运行时监听的端口,是给镜像使用者看的EXPOSE 8080
ENTRYPOINT镜像中应用的启动命令,容器运行时调用ENTRYPOINT java -jar xx.jar

更多详细语法说明,请参考官方文档

举例:

基于Ubuntu基础镜像,利用Dockerfile描述镜像结构

#指定基础镜像
FROM ubuntu:16.04
#配置环境变量,JDK的安装目录、容器内时区
ENV JAVA_DIR=/usr/local
#拷贝jdk和java项目的包
COPY ./jdk8.tar.gz $JAVA_DIR/
COPY ./docker-demo.jar /tmp/app.jar
#安装JDK
RUN cd $JAVA_DIR \ && tar -xf ./jdk8.tar.gz \ && mv ./jdk1.8.0_144 ./java8
#配置环境变量
ENV JAVA_HOME=$JAVA_DIR/java8
ENV PATH=$PATH:$JAVA_HOME/bin
#入口,java项目的启动命令
ENTRYPOINT ["java", "-jar", "/app.jar"]

也可以直接基于jdk为基础镜像,省略上述步骤

#指定基础镜像
FROM openjdk:11.0-jre-buster
#拷贝jar包
COPY docker-demo.jar /app.jar
#入口,java项目的启动命令
ENTRYPOINT ["java", "-jar", "/app.jar"]
构建镜像

编写好了Dockerfile,可利用下面的命令来构建镜像

docker build -t myImage:1.0 . 
  • -t:是给镜像起名,格式依然是repository:tag的格式,不指定tag时,默认为latest
  • .:是指定Dockerfile所在目录,如果就在当前目录,则指定为 “.”

格式docker build -t 镜像名 Dockerfile目录

容器网络

默认情况下,所有容器都是以bridge方式连接到Docker的一个虚拟网桥上:

在这里插入图片描述

加入自定义网络的容器才可以通过容器名互相访问,Docker的网络操作命令如下:

命令说明
docker network create创建一个网络
docker network ls查看所有网络
docker network rm删除指定网络
docker network prune清除未使用的网络
docker network connect使指定容器连接加入某网络
docker network disconnect使指定容器连接离开某网络
docker network inspect查看网络详细信息

项目部署

部署Java

Dockerfile

#基础镜像
FROM openjdk:11.0-jre-buster
#设定时区
ENV TZ=Asia/Shanghai
RUN ln -snf /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ > /etc/timezone
#拷贝jar包
COPY liner-service.jar /app.jar
#入口
ENTRYPOINT ["java","-jar","/app.jar"]
#构建镜像
docker build -t mall .
#运行镜像
docker run -d --name linmall -p 8080:8080 --network liner mall

部署前端

docker run -d \
--name nginx \
-p 18080:18080 \
-p 18081:18081 \
-v /root/ngin/html:/usr/share/nginx/ html \
-v /root/nginx/nginx.conf:/etc/nginx/nginx.conf \
--rTetwork liner \
nginx

DockerCompose

Docker Compose通过一个单独的docker-compose.yml模板文件(YAML格式)来定义一组相关联的应用容器,帮助我们实现多个相互关联的Docker容器的快速部署

在这里插入图片描述

docker compose命令格式如下:

docker compose [OPTIONS] [COMMAND]
类型参数或指令说明
Options-f指定compose文件的路径和名称
Options-p指定projcct名称
Commandsup创建并启动所有service容器
Commandsdown停止并移除所有容器、网络
Commandsps列出所有启动的容器
Commandslogs查看指定容器的日志
Commandsstop停止容器
Commandsstart启动容器
Commandsrestart重启容器
Commandstop查看运行的进程
Commandsexec在指定的运行中容器中执行命令
http://www.15wanjia.com/news/57313.html

相关文章:

  • b2c模式的电商网站最新国际新闻50条简短
  • 网站开发web服务器控件实验报告百度商家平台登录
  • 鱼台县建设局网站注册公司流程和费用
  • 外链发布平台有哪些泰州seo排名扣费
  • 做音乐网站用什么程序网站如何做seo排名
  • 如何做一份企业网站手机搜索引擎
  • 家教网站模板下载电脑版百度网盘
  • 个人网站备案名和运营google关键词推广
  • 网站开发公司 重庆seo排名如何优化
  • 企业网站建设公司怎么收费百度地图推广
  • 介绍自己做的网站的论文石家庄谷歌seo公司
  • 网站建设杭州哪家便宜郑州疫情最新情况
  • 免费的asp网站地推平台去哪里找
  • 自适应网站导航是怎么做的今日最新闻
  • 长春建站优化企业高管培训课程有哪些
  • 版纳网站建设重庆seo1
  • 网站忧化教程网站关键字优化公司
  • 网站不备案怎么办理厦门seo关键词优化
  • 沭阳县城乡建设局网站南宁seo内部优化
  • 进入官方网站百度小说排行
  • 一个主机怎么做两个网站外贸推广方式
  • 安康网站开发太原百度公司地址
  • 网站开发课程有哪些长尾关键词有哪些
  • 258做网站怎么样关键词的选取原则
  • 寿光公司做网站重庆网站建设公司
  • 网站想上线怎么做百度指数是什么
  • android开发平台超级优化空间
  • 哈工大 网站开发品牌推广方案思维导图
  • 加强学科网站建设学电脑培训班多少一个月
  • 网站维护需要关闭网站么今天的新闻主要内容