Git Product home page Git Product logo

docker-strider's Introduction

Strider-CD Docker

Build Status

Possibly the best Dockerfile for Strider-CD.

Features

  • Uses node base image
  • Doesn't run as root
  • Thin and Optimised Container. Uses linked MongoDB and SMTP containers for those services
  • Installs latest Strider-CD cleanly from Git source
  • Supports installing and upgrading plugins from the web UI.

Usage

The most straight forward usage is via Docker links:

docker run -d --name mongo mongo
docker run -d --name smtp -e MAILNAME=test panubo/postfix
docker run -d --name strider -p 3000:3000 --link mongo --link smtp docker.io/macropin/strider:latest

Then go point your browser at http://localhost:3000.

Environment variables

These are the base Strider variables. Docker links can be use in place of configuring the SMTP and MongoDB services:

  • SERVER_NAME - Required; Address at which server will be accessible on the Internet. E.g. https://strider.example.com (note: no trailing slash)
  • HOST - Host where strider listens, optional (defaults to 0.0.0.0).
  • PORT - Port that strider runs on, optional (defaults to 3000).
  • DB_URI - MongoDB DB URI (or use --link MONGO), alternatively define both MONGO_HOST and MONGO_PORT
  • HTTP_PROXY - Proxy support, optional (defaults to null) If you want email notifications, configure an SMTP server (we recommend Mailgun for SMTP if you need a server - free account gives 200 emails / day):
  • SMTP_HOST - SMTP server hostname e.g. smtp.example.com
  • SMTP_PORT - SMTP server port e.g. 587 (default)
  • SMTP_USER - SMTP auth username e.g. "myuser"
  • SMTP_PASS - SMTP auth password e.g. "supersecret"
  • SMTP_FROM - Default FROM address e.g. "Strider [email protected]" (default)

Initial config variables. If these are defined then they will be used to create an admin account:

  • STRIDER_ADMIN_EMAIL
  • STRIDER_ADMIN_PASSWORD

Status

Stable.

docker-strider's People

Contributors

lighta971 avatar macropin avatar trnubo avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar

docker-strider's Issues

Trouble starting container

I'm not sure what exactly is going on. But strider can't be run. Any time it is, this is the error that I see. The container won't come up because of this.

I'm not sure why it can't find backoff. I built the image from scratch from this repo and it still does it. So it doesn't appear to be a bad build.

Any ideas what might be causing this?

entry.sh >> Running addUser
module.js:487
    throw err;
    ^

Error: Cannot find module 'backoff'
    at Function.Module._resolveFilename (module.js:485:15)
    at Function.Module._load (module.js:437:25)
    at Module.require (module.js:513:17)
    at require (internal/module.js:11:18)
    at Object.<anonymous> (/data/node_modules/ldapjs/lib/client/client.js:9:15)
    at Module._compile (module.js:569:30)
    at Object.Module._extensions..js (module.js:580:10)
    at Module.load (module.js:503:32)
    at tryModuleLoad (module.js:466:12)
    at Function.Module._load (module.js:458:3)
    at Module.require (module.js:513:17)
    at require (internal/module.js:11:18)
    at Object.<anonymous> (/data/node_modules/ldapjs/lib/client/index.js:7:14)
    at Module._compile (module.js:569:30)
    at Object.Module._extensions..js (module.js:580:10)
    at Module.load (module.js:503:32)
    at tryModuleLoad (module.js:466:12)
    at Function.Module._load (module.js:458:3)
    at Module.require (module.js:513:17)
    at require (internal/module.js:11:18)
    at Object.<anonymous> (/data/node_modules/ldapjs/lib/index.js:5:14)
    at Module._compile (module.js:569:30)

Can't connect on port 3000

Followed the instructions in the README but for some reason the container won't accept connections on port 3000. I tested some other apps on port 3000 just to make sure that the port wasn't being blocked, and the port is indeed available.

Container logs:

>> Strider Docker Image master Starting...
entry.sh >> Set MONGO_HOST=172.17.0.2, MONGO_PORT=27017
entry.sh >> Set SMTP_HOST=172.17.0.3, SMTP_PORT=587
entry.sh >> Set DB_URI=mongodb://172.17.0.2:27017/strider
entry.sh >> Copying node_modules from cache...
Exec'ing command strider
20 forked

Any ideas?

DB_URI parsing error and SMTP have to be an option

I was passing a DB_URI argument like below

-e DB_URI=mongodb://id:[email protected]:10047/db

and it parsed result was wrong.

strider@d03ceae1d912:/$ echo "$(echo ${DB_URI} | cut -d/ -f3 | cut -d \: -f2)"
[email protected]

strider@d03ceae1d912:/$ echo "$(echo ${DB_URI} | cut -d/ -f3 | cut -d \: -f1)"
id

I don't want to receive email notifications, but I got a message like 'You must link this container with SMTP or define SMTP_HOST'. Official Strider-CD repository wrote SMTP configure does not required.

If you want email notifications, configure an SMTP server
https://github.com/Strider-CD/strider#configuring

SERVER_NAME parameter ignored

The SERVER_NAME parameter is not passed as an environment variable when starting strider.

$ docker run -e SERVER_NAME http://xxx.xxx.xxx -d --link mongo --link smtp --name strider -p 80:3000 macropin/strider

Maintainer Wanted

I'm looking for anyone willing to maintain this repo and keep the builds up to date with upstream.

I no longer use strider, and I'm not a node expert so I'd rather someone else take over.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.