我一直在尝试制作一个 GitLab CI/CD 管道来部署我的 MEAN 应用程序。我有三个阶段:1. 测试 2. 构建 3. 部署
构建阶段有一个生成工件的 build_angular 作业。现在我想在下一阶段使用这个工件,即部署。部署作业告诉我它已下载工件(已附加图像),但现在我想提取此工件,但我不知道工件下载到哪里。
我正在尝试设置一个 django 项目并对其进行 dockerize。我在运行容器时遇到问题。据我所知,abe 构建成功,但运行失败。
这是我得到的错误:
错误:对于 web 无法启动服务 web:OCI 运行时创建失败:container_linux.go:349:启动容器进程导致“exec:\”./entrpoint.sh\“:stat ./entrpoint.sh:没有这样的文件或目录” :未知错误:启动项目时遇到错误。
这是 dockerfile:
FROM python:3.6
RUN mkdir /backend
WORKDIR /backend
ADD . /backend/
RUN pip install -r requirements.txt
RUN apt-get update \
&& apt-get install -yyq netcat
RUN chmod 755 entrypoint.sh
ENTRYPOINT ["./entrpoint.sh"]
Run Code Online (Sandbox Code Playgroud)
这是撰写文件:
version: '3.7'
services:
db:
image: postgres:12.0-alpine
volumes:
- postgres_data:/var/lib/postgresql/data/
environment:
- POSTGRES_USER=django
- POSTGRES_PASSWORD=password
- POSTGRES_DB=database
web:
restart: on-failure
build: .
container_name:backend
volumes:
- .:/backend
env_file:
- ./api/.env
command: python manage.py runserver 0.0.0.0:8000
ports: …Run Code Online (Sandbox Code Playgroud) 我正在尝试实施 github 操作以将 django 项目部署到我的 Google Compute Engine,但无法实现。
我正在关注本教程:https : //testdriven.io/blog/deploying-django-to-digitalocean-with-docker-and-github-actions/
错误日志说:
/home/runner/work/_temp/f***572db0-***32d-4053-8b60-f5d54780dd7c.sh:第4行:意外标记附近的语法错误`)'
name: Continuous Integration and Delivery
on: [push]
env:
WEB_IMAGE: docker.pkg.github.com/$GITHUB_REPOSITORY/web
CHANNELS_IMAGE: docker.pkg.github.com/$GITHUB_REPOSITORY/channels
jobs:
build:
name: Build Docker Images
runs-on: ubuntu-latest
steps:
- name: Checkout master
uses: actions/checkout@v1
- name: Add environment variables to .env
run: |
echo DEBUG=0 >> .env
echo SQL_ENGINE=django.db.backends.postgresql_pyscopg2 >> .env
echo DATABASE=postgres >> .env
echo SECRET_KEY=${{ secrets.SECRET_KEY }} >> .env
echo SQL_DATABASE=${{ secrets.SQL_DATABASE }} >> .env
echo SQL_USER=${{ secrets.SQL_USER }} >> …Run Code Online (Sandbox Code Playgroud) 我一直在试图弄清楚如何对 NestJS 服务进行单元测试。所以我写了一个规范文件来测试这些使用 jest 的 NestJS 服务。
规范文件如下:
import { Test, TestingModule } from '@nestjs/testing';
import { EventsService } from './events.service';
import { getModelToken } from '@nestjs/mongoose';
import { CreateEventDto } from './dto/create-event.dto';
const event = {
_id: '53d53d2s',
name: 'Event Name',
description: 'Description of the event.',
min_team_size: 0,
max_team_size: 4,
event_price: 300,
};
describe('EventsService', () => {
let service: EventsService;
const eventModel = {
save: jest.fn().mockResolvedValue(event),
find: jest.fn().mockResolvedValue([event]),
findOne: jest.fn().mockResolvedValue(event),
findOneAndUpdate: jest.fn().mockResolvedValue(event),
deleteOne: jest.fn().mockResolvedValue(true),
};
beforeEach(async () => { …Run Code Online (Sandbox Code Playgroud)