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

大连网站seo免费咨询律师的app

大连网站seo,免费咨询律师的app,做网站送的手机站是什么,壹佰云建站前言 那么这里博主先安利一些干货满满的专栏了#xff01; 首先是博主的高质量博客的汇总#xff0c;这个专栏里面的博客#xff0c;都是博主最最用心写的一部分#xff0c;干货满满#xff0c;希望对大家有帮助。 高质量博客汇总 然后就是博主最近最花时间的一个专栏… 前言 那么这里博主先安利一些干货满满的专栏了 首先是博主的高质量博客的汇总这个专栏里面的博客都是博主最最用心写的一部分干货满满希望对大家有帮助。 高质量博客汇总 然后就是博主最近最花时间的一个专栏《Docker从认识到实践再到底层原理》希望大家多多关注 Docker从认识到实践再到底层原理 Docker Compose 1. 概览 参考比特就业课 1.1 Docker Compose是什么 docker-compose 是 Docker 官方的开源项目使用 python 编写实现上调用了Docker 服务的 API 进行容器管理及编排其官方定义为定义和运行多个 Docker 容器的应用。 docker-compose 中有两个非常重要的概念 服务service一个应用的容器实际上可以包括若干运行相同镜像的容器实例。项目project由一组关联的应用容器组成的一个完整业务单元在docker-compose.yml文件中定义, 整个docker-compose.yml定义一个项目。 Compose的默认管理对象是项目通过子命令对项目中的一组容器进行便捷地生命周期管理。通过compose可以方便的管理多个服务。 1.2 为什么要 Docker Compose Docker 是一个轻量化的应用程序Docker 官方推荐每个 Docker 容器中只运行一个进程。 如果一个应用需要涉及到 MySQL、nginx 等环境 那么我们需要分别为应用、数据库和 nginx 创建单独的 docker 容器然后分别启动容器。想象一下当我们构建好 Docker 之后每次启动应用都至少需要 docker run三次 或者写一些脚本来实现 这样会比较繁琐。 另外这些 docker 容器都是分散独立的也不方便镜像管理。那既然这些 docker 容器 都是为了同一个应用服务我们就应该把它们放到一起这就引出了 docker-compose 来解决这类型的问题。 2. Docker Compose 的安装 我们安装docker的时候已经顺便安装了大家可以看看前面的章节第一章。 检查是否安装上了。 rootALiCentos7:~$ docker compose version Docker Compose version v2.20.2 You have new mail in /var/spool/mail/root rootALiCentos7:~$3. Docker Compose 的功能简介 3.1 使用步骤 Compose 使用的步骤 使用docker-compose.yml定义构成应用程序的服务这样它们可以在隔离环境中一起运行。最后执行 docker compose up 命令来启动并运行整个应用程序。 3.2 核心功能 Compose 具有管理应用程序整个生命周期的命令 启动停止和重建服务 查看正在运行的服务的状态 流式传输运行服务的日志输出 在服务上运行一次性命令 4. Docker Compose 文件docker-compose.yml 4.1 文件语法版本 目前官方支持三个大版本 即 Version 1、Version 2 及 Version 3 其中 Version 1 已经被废弃掉了。当前最新的版本是 3.8它支持的 Docker Engine 版本不得低于 19.03.0。 官方文档 https://docs.docker.com/compose/compose-file/compose-versioning/ 4.2 文件的基本结构 version: 3.8 # 定义版本 表示当前使用的 docker-compose 语法的版本 services: # 服务可以存在多个 servicename: # 服务名字它也是内部bridge 网络可以使用的DNS name如果不是集群模式相当于 docker run的时候指定的一个名称 #集群Swarm模式是多个容器的逻辑抽象 image: # 必选镜像的名字 command: # 可选如果设置则会覆盖默认镜像里的 CMD 命令 environment: # 可选等价于 docker container run 里的 --env 选项设置环境变量 volumes: # 可选等价于docker container run 里的 -v 选项 绑定数据卷 networks: # 可选等价于 docker container run 里的 --network 选项指定网络 ports: # 可选等价于 docker container run 里的 -p 选项指定端口映射 expose: # 可选指定容器暴露的端口 build: #构建目录 depends_on: #服务依赖配置 env_file: #环境变量文件 servicename2: image: command: networks: ports: servicename3: #... volumes: # 可选等价于 docker volume create networks: # 可选等价于 docker network create4.3 常见字段格式语法 4.3.1 image image: redis image: redis:5 image: redissha256:0ed5d5928d4737458944eb604cc8509e245c3e19d02ad83935398 bc4b991aac7 image: library/redis image: docker.io/library/redis image: my_private.registry:5000/redis先准备好目录先。 把配置文件写好。 启动配置文件里面的所有东西。 会默认创建一个桥网络的然后把工程相关的容器加入到这个项目的网络里面去和docker默认网络分开的。 停止和删除。 4.3.2 command 覆盖容器启动的默认命令。 command: [bundle, exec, thin, -p, 3000] command: bundle exec thin -p 30004.3.3 entrypoint 覆盖容器默认的 entrypoint。 两种格式。 entrypoint: /code/entrypoint.shentrypoint: - php - -d - zend_extension/usr/local/lib/php/extensions/no-debug-non-zts-20100525/xdebug.so - -d - memory_limit-1 - vendor/bin/phpunit4.3.4 environment 添加环境变量。您可以使用数组或字典、任何布尔值布尔值需要用引号引起来以确保 YML 解析器不会将其转换为 True 或 False。 # map语法 environment: RACK_ENV: development SHOW: true USER_INPUT: # 数组语法 environment: - RACK_ENVdevelopment - SHOWtrue - USER_INPUT4.3.5 networks 指定容器运行的网络。 要调整网络的信息也很容易。如下面的例子所示即可。 services:frontend:image: awesome/webappnetworks:front-tier:ipv4_address: 172.16.238.10 networks:front-tier:ipam:driver: defaultconfig:- subnet: 172.16.238.0/244.3.6 volumes 将主机的数据卷或者文件挂载到容器里。 #短语法 对应 -v 的精简的配置 services:db:image: postgres:latestvolumes:- /localhost/postgres.sock:/var/run/postgres/postgres.sock- /localhost/data:/var/lib/postgresql/data #完整语法 对应 --mount 的详细的配置 services:backend:image: awesome/backendvolumes:- type: volume#命名卷source: db-datatarget: /datavolume:nocopy: true#绑定卷- type: bindsource: /var/run/postgres/postgres.socktarget: /var/run/postgres/postgres.sock volumes:db-data:4.3.7 ports 端口映射其实就是命令中的-p选项。 #完整语法 ports:- target: 80host_ip: 127.0.0.1 # 设置成 0.0.0.0 就是所有机器都能来访问published: 8080protocol: tcpmode: host- target: 80host_ip: 127.0.0.1published: 8000-9000protocol: tcpmode: host #短语法 ports:- 3000- 3000-3005- 8000:8000- 9090-9091:8080-8081- 49100:22- 127.0.0.1:8001:8001- 127.0.0.1:5000-5010:5000-5010- 6060:6060/udp4.3.8 expose 暴露端口但不映射到宿主机只被连接的服务访问。 expose: - 3000 - 80004.3.9 build 这个参数我们学完dockerFile之后就能理解了现在先不讲。 4.3.10 depends_on 设置依赖关系。 docker compose up 以依赖性顺序启动服务。在以下示例中先启动 db 和redis 才会启动 web。 docker compose up SERVICE 自动包含 SERVICE 的依赖项。在以下示例中docker compose up web 还将创建并启动 db 和 redis。 docker compose stop 按依赖关系顺序停止服务。在以下示例中web 在 db 和redis 之前停止。 这个参数比较复杂大家来看看例子。 version: 3.7services:web:build: .depends_on:- db- redisredis:image: redisdb:image: postgres可以指定条件healthy 需要配置 healthcheck 来完成。 services:web:build: .depends_on:db:condition: service_healthyredis:condition: service_startedredis:image: redisdb:image: postgreshealthcheck案例。 version: 3.8services:web:image: nginx:1.24.0environment:TEST: 1depends_on:mysql:condition: service_healthymysql:image: mysql:5.7environment:MYSQL_ROOT_PASSWORD: bit123volumes:- /data/maxhou/mysqldata/varlib/:/var/lib/mysqlhealthcheck:test: mysql --userroot --passwordbit123 -e SELECT 1;interval: 10stimeout: 5sretries: 104.3.11 env_file 从文件添加环境变量。可以是单个值或列表的多个值。 env_file: .envenv_file: - ./common.env - ./apps/web.env - /opt/secrets.env5. Docker Compose 命令 5.1 命令清单 命令功能docker compose build构建服务docker compose config规范的格式来显示服务配置docker compose cp在本地系统和服务容器直接拷贝文件docker compose create创建服务的容器docker compose down停止所有容器并删除容器docker compose events从服务器获取实时时间docker compose exec在容器中执行命令docker compose images列出所有容器使用的镜像docker compose kill强制停止服务的容器docker compose logs显示日志docker compose ls显示所有项目docker compose pause暂停服务docker compose port列出所有的端口映射docker compose ps该命令可以列出项目中目前的所有容器docker compose pull拉取服务镜像docker compose push推送服务镜像docker compose restart重启或者重启某个服务docker compose rm删除服务停止的容器docker compose run在指定服务容器上执行相关的命令docker compose start 启动当前停止的某个容器docker compose stop停止当前运行的某个容器docker compose top显示运行的进程docker compose unpause恢复服务docker compose upup 命令会构建重新创建启动链接一个服务相关的容器。默认情况下如果容器已经存在将会停止并尝试重新创建他们。并使用之前挂载的卷。–no-recreate 参数可以让容器不被停止或者重新创建-d 表示后台运行docker compose version查看版本 5.2 命令格式 对于 Compose 来说大部分命令的对象既可以是项目本身也可以指定为项目中的服务或者容器。如果没有特别的说明命令对象将是项目这意味着项目中所有的服务都会受到命令影响。docker-compose 命令的基本的使用格式为如下所示。 docker compose [OPTIONS] COMMAND [ARGS...]5.3 常用选项 -f, --file 指定使用的 Compose 模板文件默认为 docker-compose.yml可以多次指定。 -p, --project-name 指定项目名称默认将使用所在目录名称作为项目名。 5.4 常见命令 5.4.1 up 该命令的作用十分强大它会尝试自动完成包括构建镜像、重新创建服务、启动服务并关联服务相关容器的一系列操作可以直接通过该命令来启动一个项目。 docker compose up [options] [SERVICE...]参数。 -d 在后台运行服务容器 推荐在生产环境下使用该选项 --force-recreate 强制重新创建容器不能与 --no-recreate 同时使用 --no-recreate 如果容器已经存在了则不重新创建不能与 --force-recreate 同时使用5.4.2 down 停止所有容器并删除容器和网络。 docker compose down [options] [SERVICE...]参数。 -v, --volumes 删除容器同时删除目录映射5.4.3 run 该命令可以在指定服务容器上执行相关的命令。 # 例如:启动一个 ubuntu 服务容器并执行 ping docker.com 命令 # docker compose run ubuntu ping docker.com docker compose run [options] SERVICE [COMMAND] [ARGS...]参数。 -d 后台运行容器 --name NAME 为容器指定一个名字 --entrypoint CMD 覆盖默认的容器启动指令 -e KEYVAL 设置环境变量值可多次使用选项来设置多个环境变量 -u, --user 指定运行容器的用户名或者 uid --rm 运行命令后自动删除容器 -p, --publish[] 映射容器端口到本地主机6. 综合案例 6.1 综合案例一 #mermaid-svg-A5syRIZs8iDVPjzL {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg-A5syRIZs8iDVPjzL .error-icon{fill:#552222;}#mermaid-svg-A5syRIZs8iDVPjzL .error-text{fill:#552222;stroke:#552222;}#mermaid-svg-A5syRIZs8iDVPjzL .edge-thickness-normal{stroke-width:2px;}#mermaid-svg-A5syRIZs8iDVPjzL .edge-thickness-thick{stroke-width:3.5px;}#mermaid-svg-A5syRIZs8iDVPjzL .edge-pattern-solid{stroke-dasharray:0;}#mermaid-svg-A5syRIZs8iDVPjzL .edge-pattern-dashed{stroke-dasharray:3;}#mermaid-svg-A5syRIZs8iDVPjzL .edge-pattern-dotted{stroke-dasharray:2;}#mermaid-svg-A5syRIZs8iDVPjzL .marker{fill:#333333;stroke:#333333;}#mermaid-svg-A5syRIZs8iDVPjzL .marker.cross{stroke:#333333;}#mermaid-svg-A5syRIZs8iDVPjzL svg{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;}#mermaid-svg-A5syRIZs8iDVPjzL .label{font-family:"trebuchet ms",verdana,arial,sans-serif;color:#333;}#mermaid-svg-A5syRIZs8iDVPjzL .cluster-label text{fill:#333;}#mermaid-svg-A5syRIZs8iDVPjzL .cluster-label span{color:#333;}#mermaid-svg-A5syRIZs8iDVPjzL .label text,#mermaid-svg-A5syRIZs8iDVPjzL span{fill:#333;color:#333;}#mermaid-svg-A5syRIZs8iDVPjzL .node rect,#mermaid-svg-A5syRIZs8iDVPjzL .node circle,#mermaid-svg-A5syRIZs8iDVPjzL .node ellipse,#mermaid-svg-A5syRIZs8iDVPjzL .node polygon,#mermaid-svg-A5syRIZs8iDVPjzL .node path{fill:#ECECFF;stroke:#9370DB;stroke-width:1px;}#mermaid-svg-A5syRIZs8iDVPjzL .node .label{text-align:center;}#mermaid-svg-A5syRIZs8iDVPjzL .node.clickable{cursor:pointer;}#mermaid-svg-A5syRIZs8iDVPjzL .arrowheadPath{fill:#333333;}#mermaid-svg-A5syRIZs8iDVPjzL .edgePath .path{stroke:#333333;stroke-width:2.0px;}#mermaid-svg-A5syRIZs8iDVPjzL .flowchart-link{stroke:#333333;fill:none;}#mermaid-svg-A5syRIZs8iDVPjzL .edgeLabel{background-color:#e8e8e8;text-align:center;}#mermaid-svg-A5syRIZs8iDVPjzL .edgeLabel rect{opacity:0.5;background-color:#e8e8e8;fill:#e8e8e8;}#mermaid-svg-A5syRIZs8iDVPjzL .cluster rect{fill:#ffffde;stroke:#aaaa33;stroke-width:1px;}#mermaid-svg-A5syRIZs8iDVPjzL .cluster text{fill:#333;}#mermaid-svg-A5syRIZs8iDVPjzL .cluster span{color:#333;}#mermaid-svg-A5syRIZs8iDVPjzL div.mermaidTooltip{position:absolute;text-align:center;max-width:200px;padding:2px;font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:12px;background:hsl(80, 100%, 96.2745098039%);border:1px solid #aaaa33;border-radius:2px;pointer-events:none;z-index:100;}#mermaid-svg-A5syRIZs8iDVPjzL :root{--mermaid-font-family:"trebuchet ms",verdana,arial,sans-serif;} nginx 系统服务 MySQL nginx反向代理到我们的web服务对外提供浏览服务查询mysql数据库用户信息返回用户数据创建用户库写入用户数据 6.1.1 编写数据初始化脚本 设计数据非常简单的一个表信息写入两条数据文件为init.sql drop database if exists test; CREATE DATABASE test DEFAULT CHARACTER SET utf8mb4 ; use test; CREATE TABLE users (sno int(11) DEFAULT NULL,sname varchar(50) DEFAULT NULL ) ENGINEInnoDB DEFAULT CHARSETutf8mb4; INSERT INTO users (sno,sname) VALUES (1,pony), (2,maxhou);这样手动操作是可以的。但是我们希望每次启动服务的时候会直接运行这些初始化我的数据。所以这些东西要写到一个sql文件里面去。 这个就叫做数据初始化脚本 6.1.2 创建一个 springboot 应用, 配置 maven 项目 6.1.3 添加启动类 6.1.4 配置数据库信息 注意本地测试的时候红色部分调整为 ip 地址而我们实际的服务使用的 mysql 的一个服务名称。 6.1.5 配置用户控制器 简单配置不再去涉及 mapper 那些内容通过 jdbc 直接完成操作。 6.1.6 编译打包 6.1.7 本地测试 6.1.8 编写 docker-compose.yml 6.1.9 创建工程目录和卷目录 6.1.10 将 nginx 的反向代理配置 bit.conf 放入到./nginx/conf.d 6.1.11 将数据库初始化文件 init.sql 放入到./mysql/init 目录 6.1.12 将应用 jar 包放入到./app 目录 6.1.13 启动我们的项目 6.2 综合案例二 6.2.1 什么是 WordPress WordPress 是使用 PHP 语言开发的博客平台用户可以在支持 PHP 和 MySQL 数据库的服务器上架设属于自己的网站。也可以把 WordPress 当作一个内容管理系统CMS来使用。WordPress 是一款个人博客系统并逐步演化成一款内容管理系统软件它是使用PHP 语言和 MySQL 数据库开发的用户可以在支持 PHP 和 MySQL 数据库的服务器上使用自己的博客。 WordPress 有许多第三方开发的免费模板安装方式简单易用。不过要做一个自己的模板则需要你有一定的专业知识。比如你至少要懂的标准通用标记语言下的一个应用 HTML 代码、CSS、PHP 等相关知识。WordPress 官方支持中文版同时有爱好者开发的第三方中文语言包如 wopus 中文语言包。WordPress 拥有成千上万个各式插件和不计其数的主题模板样式。 6.2.2 编写 docker compose version: 3.8 services:wordpress:image: wordpressrestart: alwaysdepends_on:db:condition: service_healthyports:- 8080:80environment:WORDPRESS_DB_HOST: dbWORDPRESS_DB_USER: mywordpressuserWORDPRESS_DB_PASSWORD: mywordpresspassWORDPRESS_DB_NAME: wordpressvolumes:- ./wordpress/:/var/www/htmldb:image: mysql:5.7environment:MYSQL_ROOT_PASSWORD: rootMYSQL_DATABASE: wordpressMYSQL_USER: mywordpressuserMYSQL_PASSWORD: mywordpresspassvolumes:- ./mysqlvarlib/:/var/lib/mysqlhealthcheck:test: mysql -u root -proot -e select 1;interval: 10stimeout: 5sretries: 10通过这个命令检查这个文件的语法是否有问题。 docker compose config6.2.3 启动服务安装博客系统 docker compose up -d直接用8080端口访问。 输入东西然后安装。 其实我们所有东西都存在这里了。
http://www.hkea.cn/news/14527915/

相关文章:

  • 做动漫的网站面馆装修设计
  • 网站推广信息西安免费做网站
  • 个人博客网站取名怎么样做淘宝优惠券网站
  • 查排名的网站999网站免费
  • 单位网站建设汇报杭州高端网站定制
  • 环保网站设计规划书视觉设计就业方向
  • 苏州制作企业网站的做维修家具广告在哪个网站好
  • 山东中恒建设集团网站如何在阿里巴巴做网站
  • 如何制作一个公司网站外包员工强制辞退找谁赔偿
  • 给上市公司做网站有什么用网业端云服务
  • 营销型网站建设怎么做营销网站建设学校网站开发背景
  • 网站域名空间怎么弄啊长沙制作手机网站
  • 春考网站建设长沙网站优化厂家
  • 组建做网站的团队wordpress 怎么手动更新
  • 宿州网站建设网页传奇游戏排行榜07073
  • 清城网站seo网站开发环境搭建章节教材书
  • 新乡模板建站郑州电子商务网站建设
  • 网站首页设计多少钱专业做网文的网站有哪些
  • 网站建设基本代码推广网上国网app
  • 加强网站编辑队伍建设西安+医疗网站建设
  • 网站icp备案需要多久软件开发工具多少钱
  • 外国黄冈网站推广平台大型门户网站建设 费用
  • 建设网站需要多少钱济南兴田德润o地址东营网站建设方案
  • 四川建设厅证件查询网站郴州市网站建设
  • 余杭门户网站有关网站建设的书
  • 郑州建设公司网站中国东盟建设集团有限公司网站
  • 麻涌镇网站仿做网站营销建设策划案
  • logo成品效果图网站汽车 营销 网站建设
  • 精美网站模板下载液体硅胶 技术支持 东莞网站建设
  • 网站信息架构宁波网站建设有限公司