首页 > 解决方案 > 如何在通过 CircleCI 运行的 Ubuntu 中启动 Redis

问题描述

我有以下 CircleCI 配置(这是修剪过的,我不包括失败行之后的配置):

version: 2
jobs:
  build:
    working_directory: ~/mycompany/mycompany_app
    docker:
    - image: ubuntu:18.04
    steps:
    - run:
        name: Update yum cache
        command: apt-get update
    - run:
        name: Install base packages
        command: apt-get install -y sudo git wget tzdata postgresql postgresql-contrib build-essential python2.7 make gcc redis-server
    - run:
        name: Start Redis
        command: sudo service redis-server start
    - run: redis-cli ping

最后一个命令,redis-cli ping给了我错误Could not connect to Redis at 127.0.0.1:6379: Connection refused

在这个问题上我能找到的最好的线程是https://github.com/Microsoft/WSL/issues/365虽然这没有帮助,因为我按照他们的建议进行手动启动。这个 SO 答案中还有一些相关的东西,但我不认为不使用upstart是我的问题。

我怎样才能启动服务器以便它响应 ping?

标签: dockerubunturediscirclecicircleci-2.0

解决方案


不过,要真正利用 CircleCI,您可能想尝试这样做:

version: 2
jobs:
  build:
    working_directory: ~/mycompany/mycompany_app
    docker:
      - image: ubuntu:18.04
      - image: circleci/redis:4.0.9
    steps:
    - run:
        name: Update Apt Cache
        command: apt-get update
    - run:
        name: Install base packages
        command: apt-get install -y sudo git wget tzdata postgresql postgresql-contrib build-essential python2.7 make gcc
    - run: redis-cli ping

推荐阅读