标签: devops

使用 Jaeger Agent 的优点

所以我正在探索Jaeger for Tracing,我发现我们可以直接通过HTTP(端口:14268)将span从客户端发送到收集器,如果是这样那么使用jaeger代理有什么优势。

何时采用 Jaeger Agent 方法以及何时采用直接 HTTP 方法。使用直接方法收集器有什么缺点

deployment setup-deployment devops opentracing jaeger

6
推荐指数
1
解决办法
1394
查看次数

如何公开docker容器端口并从postman调用?

docker日志

6000/tcp, 0.0.0.0:6000->80/tcp vigilant_mclean

尝试使用 url 给邮递员打电话,http://0.0.0.0:6000/但没有得到任何回复。

有人可以解释一下当我们运行容器时 docker port 是如何工作的吗?

Docker文件

FROM node:10
WORKDIR /usr/src/app
COPY package*.json ./
RUN npm install
COPY . .
EXPOSE 6000
CMD [ "node", "server.js" ]
Run Code Online (Sandbox Code Playgroud)

服务器.js

const express = require('express')
const app = express()
const port = 6000
const bodyParser = require('body-parser');
const middleware = ('./middleware');
const middleware2 = ('./middleware2');


app.use(bodyParser.json());
app.get('/', (req, res) => res.send('Hello World!'))
app.post('/v1', middleware, middleware2);


app.listen(port, () => console.log(`Example app listening on port ${port}!`));

module.exports = …
Run Code Online (Sandbox Code Playgroud)

docker dockerfile devops

6
推荐指数
1
解决办法
8405
查看次数

如何使用parcel-bundler将public目录中的所有文件添加到构建目录

我在 React 应用程序上使用 Parcel-Bundler。但我意识到我需要使用 HTTP 文件重定向所有文件 index.html,但是当我将 .htaccess 文件添加到我的公共目录时。构建项目后,它不会添加到 dist 文件夹中。

如何在构建后无需手动添加文件的情​​况下实现此目的?

javascript node.js reactjs devops parceljs

6
推荐指数
1
解决办法
2110
查看次数

使用特定提交 ID 构建手动 GitlabCI 管道作业

我需要手动构建 Gitlab CI 管道,但不使用最新的 master 分支,而是使用特定的 commitID。我尝试通过使用如下变量并传递其值来手动运行管道,但没有用。

Input variable key: CI_COMMIT_SHA
Run Code Online (Sandbox Code Playgroud)

continuous-integration gitlab gitlab-ci devops jenkins-pipeline

6
推荐指数
1
解决办法
5833
查看次数

Dockerfile 中的条件复制?

我有一个带有生产 Dockerfile 的应用程序,它将我们的源代码复制到容器中,即:

COPY . /app

我想将此副本设置为有条件的,以便传入CONTEXT=环境变量来阻止/允许该行执行。那可能吗?

我在这里看到了相关帖子,但没有明确的答案。谢谢!

cloud environment-variables docker devops

6
推荐指数
1
解决办法
9329
查看次数

有没有办法控制从 AWS CodePIPELINE 保存在 S3 中的构建工件名称

我想要完成的是设置通过代码管道而不是代码构建生成的工件名称。我知道我们可以在代码构建级别控制名称,但我希望它专门用于代码管道。

我已经确认该机制在代码构建中按预期工作,但是我找不到任何有关该机制是否也可以在代码管道中使用的信息。到目前为止,我自己的测试表明事实并非如此。

continuous-integration amazon-web-services devops aws-codepipeline aws-codebuild

6
推荐指数
0
解决办法
456
查看次数

如何使用动态数据在 Jenkins 管道中构建并行和顺序阶段的组合

我正在尝试构建一个结合了并行和顺序阶段的 Jenkins 管道。我能够使用静态数据完成相同的任务,但在使用动态数据时(即使用参数化构建并从构建参数读取数据时)无法使其工作。

下面的代码片段工作正常

pipeline {
agent any
stages {
    stage('Parallel Tests') {
        parallel {
            stage('Ordered Tests Set') {
                stages {
                    stage('Building seq test 1') {
                        steps {
                             echo "build seq test 1"
                            }
                    }
                    stage('Building seq test 2') {
                        steps {
                               echo "build seq test 2"
                        }
                    }
                    
                }
            }

            stage('Building Parallel test 1') {
                steps {
                    echo "Building Parallel test 1"
                }
            }
            stage('Building Parallel test 2') {
                steps {
                   echo "Building Parallel test 2"
                }
            }   
        } …
Run Code Online (Sandbox Code Playgroud)

jenkins devops jenkins-pipeline jenkins-declarative-pipeline

6
推荐指数
1
解决办法
6096
查看次数

在 Ansible 中使用 if 条件将 True 或 False 分配给 Gather_facts 不起作用

---
- hosts: "{{ run_on_node|default('mysql_cluster_sql[0]')}}"
  connection: "{% if migrated is defined and migrated == 'yes' %}local{% else %}ssh{% endif %}" # This works as we are assigning non boolean value
  gather_facts: "{% if migrated is defined and migrated == 'yes' %}false{% else %}true{% endif %}" #This doesnt work well
  tasks:
    - debug: var=ansible_all_ipv4_addresses
    - debug: var=ansible_default_ipv4.address
Run Code Online (Sandbox Code Playgroud)

库存文件:

[mysql_cluster_sql]
10.200.1.191 migrated=yes
Run Code Online (Sandbox Code Playgroud)

该变量根据条件具有 true 和 false 值,但即使 Gather_facts 为 false,它也会收集事实。

ansible devops ansible-facts

6
推荐指数
1
解决办法
8219
查看次数

如何将nodeSelector添加到部署yaml文件中?

在 pod 定义中,我们将 nodeSelector 添加为 spec 的子项。但我不确定如何将其添加到部署 yaml 文件中

我们是否应该将其添加到模板的规范中?

apiVersion: apps/v1
kind: Deployment
metadata: 
  name: first-deployment
  labels: 
    app: first
spec:
  replicas: 1
  template:
    metadata:
      name: first-deployment-pod
      label: 
        app: first
    spec:
      containers:
      - name: test
        image: test/test
    nodeSelector:
      testkey: testvalue

 
Run Code Online (Sandbox Code Playgroud)

或者我们是否需要将其添加到部署规范中 -

apiVersion: apps/v1
kind: Deployment
metadata: 
  name: first-deployment
  labels: 
    app: first
spec:
  replicas: 1
  nodeSelector:
    testkey: testvalue
  template:
    metadata:
      name: first-deployment-pod
      label: 
        app: first
    spec:
      containers:
      - name: test
        image: test/test
    
 
Run Code Online (Sandbox Code Playgroud)

deployment kubernetes devops nodeselector

6
推荐指数
1
解决办法
9207
查看次数

如何将 GitHub Releases 与 Vercel 结合使用?

我正在使用 Next.js 开发一个电子商务网站,并希望将其部署到 Vercel。我已经看到 Vercel 使用 Deploy-Preview-Ship 模型 (DPS),虽然我不确定这是否违反,但我想知道是否有办法将 GitHub 操作/标签链接到我的 Vercel 部署,所以我可以部署每个 GitHub 版本,而不是每次合并到主分支。这样我就可以保持更好的语义版本控制,并且可以将 PR 和更改批量批量发布到版本中。有什么想法或者我最好在每次合并到主程序时部署到生产环境吗?

github semantic-versioning devops next.js vercel

6
推荐指数
0
解决办法
1650
查看次数