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

销售部网站建设费wordpress主题翻译

销售部网站建设费,wordpress主题翻译,做公司网站要多久,搜索引擎营销是什么意思相关博文#xff1a; Ubuntu 简单安装和配置 GitLabUbuntu 简单安装 DockerUbuntu Docker 简单安装 GitLabUbuntu Docker 安装和配置 GitLab CI 持续集成服务器版本 Ubuntu 16.04 LTS。 经过上面四篇博文中的相关安装和配置#xff0c;我们主要完成了两个容器的创建和运行 Ubuntu 简单安装和配置 GitLabUbuntu 简单安装 DockerUbuntu Docker 简单安装 GitLabUbuntu Docker 安装和配置 GitLab CI 持续集成服务器版本 Ubuntu 16.04 LTS。 经过上面四篇博文中的相关安装和配置我们主要完成了两个容器的创建和运行gitlab和gitlab-runnerGitLab 站点和 GitLab CI 服务 $ docker ps CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 696d559ce382 gitlab/gitlab-runner:latest /usr/bin/dumb-ini... 5 days ago Up 25 minutes gitlab-runner ff95f354200d gitlab/gitlab-ce:latest /assets/wrapper 7 days ago Up 6 days (healthy) 0.0.0.0:80-80/tcp, 0.0.0.0:443-443/tcp, 0.0.0.0:8888-22/tcp gitlab 本篇博文目的使用 GitLab CI 脚本编译 ASP.NET Core 2.0 程序然后将编译后的文件传输到服务器上最后使用 SSH 连接服务器并运行程序完成发布和部署。 简单来说就是我们每次使用git push提交完代码自动完成发布和部署。 我们再理一下实现上面目的关键点 创建一个 ASP.NET Core 2.0 示例程序完善并正确的.gitlab-ci.yml文件配置GitLab CI 服务器使用ssh连接到测试服务器在 Docker 中使用scp进行服务器之间的文件传输使用supervisor进行站点程序的进程管理我花了很长时间配置第三步其实最后解决也很简单当然都是马后炮的结论?下面我们分别来进行操作。 1. 创建 ASP.NET Core 2.0 示例程序 我自己创建示例程序http://40.125.206.47/team/hwapp 注服务器快过期了大家可以随便搞?。 自己创建的话也很简单官方教程https://www.microsoft.com/net/core#linuxubuntu 我再搬运下命令安装 .NET Core 2.0并创建 ASP.NET Core 2.0 示例程序 $ curl https://packages.microsoft.com/keys/microsoft.asc | gpg --dearmor microsoft.gpg $ sudo mv microsoft.gpg /etc/apt/trusted.gpg.d/microsoft.gpg $ sudo sh -c echo deb [archamd64] https://packages.microsoft.com/repos/microsoft-ubuntu-xenial-prod xenial main /etc/apt/sources.list.d/dotnetdev.list$ sudo apt-get update $ sudo apt-get install dotnet-sdk-2.0.0$ dotnet new webapi -o hwapp $ cd hwapp 最后绑定下 ASP.NET Core 2.0 程序端口 public class Program {public static void Main(string[] args){BuildWebHost(args).Run();}public static IWebHost BuildWebHost(string[] args) WebHost.CreateDefaultBuilder(args).UseKestrel() //add code.UseUrls($http://*:8088) //add code.UseStartuphwapp.Startup().Build(); } 2. .gitlab-ci.yml 文件配置 我的.gitlab-ci.yml文件配置http://40.125.206.47/team/hwapp/blob/master/.gitlab-ci.yml image: microsoft/aspnetcore-build stages:- build- deploy_dev before_script:# Install ssh-agent if not already installed, it is required by Docker.# (change apt-get to yum if you use a CentOS-based image)- which ssh-agent || ( apt-get update -y apt-get install openssh-client -y )# Run ssh-agent (inside the build environment)- eval $(ssh-agent -s)# Add the SSH key stored in SSH_PRIVATE_KEY variable to the agent store# error: https://gitlab.com/gitlab-examples/ssh-private-key/issues/1# - echo $SSH_PRIVATE_KEY_DEV- ssh-add (echo $SSH_PRIVATE_KEY_DEV)# For Docker builds disable host key checking. Be aware that by adding that# you are suspectible to man-in-the-middle attacks.# WARNING: Use this only with the Docker executor, if you use it with shell# you will overwrite your users SSH config.- mkdir -p ~/.ssh- [[ -f /.dockerenv ]] echo -e Host *\n\tStrictHostKeyChecking no\n\n ~/.ssh/config build_job:stage: buildonly:- masterscript:- dotnet restore- dotnet build deploy_dev_job:stage: deploy_devenvironment:name: developmentonly:- masterscript:# 发布程序并部署运行- dotnet publish -c Release --output bin/publish- scp -r bin/publish root$DEPLOY_SERVER_DEV:/home/xishuai/wwwroot/hwapp- ssh root$DEPLOY_SERVER_DEV supervisorctl restart hwapp curl http://localhost:8088/api/values 上面是我最终调试成功后的.gitlab-ci.yml文件配置其实整个的构建和发布流程从上面的配置中都可以看出。 这里记录下一些东西 配置一开始的image设置的是我们用于构建的镜像也就是说后面所有的脚本执行都是在基于这个镜像创建的容器中如果不设置的话默认使用的是我们一开始配置 GitLab CI 填写的 Docker Image也可以手动编辑vim /srv/gitlab-runner/config/config.toml进行修改我这里使用的是microsoft/aspnetcore-build镜像只用于 ASP.NET Core 应用程序的编译和构建。 stage可以理解为台阶每走一步相当于job当然这里的台阶可以走很多步需要注意的是每上一个台阶或者每走一步都必须基于上一个台阶或上一步执行成功before_script执行在这些步骤之前可以理解为准备工作。 environment将执行的job归纳为哪一种执行环境你可以设置开发环境和正式环境我们可以通过通过后台进行查看 3. GitLab CI 服务器使用 SSH 连接到测试服务器 什么意思呢就是我们需要在 GitLab CI 构建环境中使用 SSH 连接到测试服务器这样我们才可以做接下来的一些操作。 官方配置SSH keys when using the Docker executor .gitlab-ci.yml示例配置 before_script:# Install ssh-agent if not already installed, it is required by Docker.# (change apt-get to yum if you use a CentOS-based image)- which ssh-agent || ( apt-get update -y apt-get install openssh-client -y )# Run ssh-agent (inside the build environment)- eval $(ssh-agent -s)# Add the SSH key stored in SSH_PRIVATE_KEY_DEV variable to the agent store- ssh-add (echo $SSH_PRIVATE_KEY_DEV)# For Docker builds disable host key checking. Be aware that by adding that# you are suspectible to man-in-the-middle attacks.# WARNING: Use this only with the Docker executor, if you use it with shell# you will overwrite your users SSH config.- mkdir -p ~/.ssh- [[ -f /.dockerenv ]] echo -e Host *\n\tStrictHostKeyChecking no\n\n ~/.ssh/config# In order to properly check the servers host key, assuming you created the# SSH_SERVER_HOSTKEYS variable previously, uncomment the following two lines# instead.# - mkdir -p ~/.ssh# - [[ -f /.dockerenv ]] echo $SSH_SERVER_HOSTKEYS ~/.ssh/known_hosts 在进行配置之前我们需要理一下这个步骤要不然思路容易混乱会造成一些问题可以参考这篇文章Fixing Enter passphrase for /dev/fd/63 in a Gitlab CI job 需要强调一点别在 GitLab CI 容器中进行 SSH 配置因为 CI 构建脚本执行在另外的容器中并且这个容器是动态进行创建的也没办法在这个动态容器中进行配置指的是手动生成 RSA 密钥。 所以我们只能手动生成 RSA 密钥然后强制添加到容器中的 SSH 配置中通过 RSA 密钥内容。 配置步骤 首先在任何一台服务器上创建 RSA 无密码的密钥 $ ssh-keygen -t rsa -P $ cat /root/.ssh/id_rsa 然后复制 RSA 密钥内容添加到/Project/Settings/Pipelines的Secret variables配置中命名为SSH_PRIVATE_KEY_DEV 这里需要特别注意复制内容为包含开头和结尾的注释信息 -----BEGIN RSA PRIVATE KEY----- xxxxxxx -----END RSA PRIVATE KEY----- 我一开始复制没有包含注释信息然后就一直报下面的错误 错误代码 $ ssh-add (echo $SSH_PRIVATE_KEY_DEV) Enter passphrase for /dev/fd/63: ERROR: Job failed: exit code 1 这里的$SSH_PRIVATE_KEY_DEV就是上面我们在Secret variables中添加的 RSA 密钥内容。 错误信息就是说需要输入 RSA 密钥的密码但我创建的确实是无密码的 RSA 密钥也就是说这个密钥是无效的我被这个问题折磨了好几天?其他人的记录 Enter passphrase for /dev/fd/63 error有我的回复?Enter passphrase for /dev/fd/63 errorhttps://gitlab.com/gitlab-examples/ssh-private-key/-/jobs/376082受这个兄弟的启发配置好这一步之后然后重新测试下我们就可以看到下面的执行信息了 $ ssh-add (echo $SSH_PRIVATE_KEY_DEV) Identity added: /dev/fd/63 (/dev/fd/63) 接着我们需要将这个 RSA 密钥对应的公钥上传到需要连接到的服务器也就是我们的测试服务器命令如下 $ ssh-copy-id root40.125.201.75 到此GitLab CI 中 SSH 的配置基本上完成了你可以在.gitlab-ci.yml中添加连接脚本进行测试 - ssh root$DEPLOY_SERVER_DEV ls cd / 一开始我们说到使用scp进行服务器之间的文件传输因为scp可以基于 SSH 连接进行传输文件所以我们直接进行文件传输了示例代码 - scp -r bin/publish root$DEPLOY_SERVER_DEV:/home/xishuai/wwwroot/hwapp scp命令参考http://www.runoob.com/linux/linux-comm-scp.html 4. 使用 Supervisor 进行站点程序的进程管理 可以参考之前的文章Ubuntu 安装和使用 Supervisor进程管理 这里贴一下supervisorctl的常用命令 命令说明supervisorctl stop program_name停止某个进程supervisorctl start program_name启动某个进程supervisorctl restart program_name重启某个进程supervisorctl stop all停止全部进程supervisorctl reload载入最新的配置文件停止原有进程并按新的配置启动、管理所有进程supervisorctl update根据最新的配置文件启动新配置或有改动的进程配置没有改动的进程不会受影响而重启5. 最终效果 Pipelines 管道地址http://40.125.206.47/team/hwapp/pipelines Build_Job 构建任务地址http://40.125.206.47/team/hwapp/-/jobs/113 Deploy_Dev_Job 发布和部署任务地址http://40.125.206.47/team/hwapp/-/jobs/115 写在最后 GitLab CI ASP.NET Core 2.0 发布和部署完成使用 CI 脚本编译程序然后将编译后的文件传输到服务器上最后运行程序完成发布和部署。GitLab CI ASP.NET Core 2.0 Docker 发布和部署下篇项目中添加Dockerfile文件使用 CI 脚本构建自定义镜像然后在服务器上拉取并创建相应容器最后启动容器完成发布和部署。
http://www.huolong8.cn/news/262117/

相关文章:

  • 福建省建设人才市场网站网站备案的规定
  • 信息推广网站点不开的那种怎么做高端的网站名称
  • 个人网站模板响应式山西推广型网站建设
  • 酒类做网站wordpress上传中文文件夹
  • 什么网站发布找做效果图的网站开发师是属于IT主体职业
  • 求一个网站开发接项目的平台建设网站有哪些问题
  • 肇庆市网站建设最新的新闻
  • 冠县企业做网站推广辽宁网站定制企业
  • 如何在网站做直播间网站内链怎么做
  • 网站建设手机端网站制作过程简介
  • 国外工业设计网站网站建设费用详细表
  • 如何查看网站备案信息吗全球设计网优秀版式作品
  • 电子商务网站建设试卷与答案宁夏微信网站建设
  • 徐汇制作网站哪家好网站是先制作后上线么
  • 网站营销特点庆阳网站设计价格
  • oa手机端seo排名查询工具
  • 网站注册平台怎么注册大连地区网站建设
  • 领地免费网站开发郑州发布评论
  • 上海市网站seo创意中山网站建设
  • 做搜索关键词任务网站如何做网站搜索功能
  • 做网站推广员工怎样制作单页网站
  • 高端网站建设过程施工企业质量管理体系应按照我国
  • 巨久科技网站建设百度一下百度网页版
  • 免费的企业建站cms西安做网站找缑阳建
  • 网站兼容所有浏览器网页制作什么主题好
  • html5国内网站建设wordpress禁止更新插件
  • 白银市做网站平面设计必备软件
  • 不良网站代码怎么查山西做网站如何选择
  • 小语种网站建设 cover云平台开发网站
  • 网站开发主要参考文献邮箱域名是什么