小编jer*_*101的帖子

在Docker中使用nginx提供Rails的预编译资产

目前我正在使用docker设置我的应用.我有一个最小的rails应用程序,有1个控制器.你可以运行以下命令来获取我的设置:

rails new app --database=sqlite --skip-bundle
cd app
rails generate controller --skip-routes Home index
echo "Rails.application.routes.draw { root 'home#index' }" > config/routes.rb
echo "gem 'foreman'" >> Gemfile
echo "web: rails server -b 0.0.0.0" > Procfile
echo "port: 3000" > .foreman
Run Code Online (Sandbox Code Playgroud)

我有以下设置:

Dockerfile:

FROM ruby:2.3

# Install dependencies
RUN apt-get update && apt-get install -y \
      nodejs \
      sqlite3 \
      --no-install-recommends \
      && rm -rf /var/lib/apt/lists/*

# Configure bundle
RUN bundle config --global frozen 1
RUN bundle config --global jobs …
Run Code Online (Sandbox Code Playgroud)

ruby-on-rails docker docker-compose

8
推荐指数
1
解决办法
1579
查看次数

如何使用NodeJS在SSH2上执行多个命令

我正在尝试从GitHub部署,我希望按照数组的顺序执行多个命令.我现在使用的代码包含在下面.

async.series([
...
// Deploy from GitHub
function (callback) {
    // Console shizzle:
    console.log('');
    console.log('Deploying...'.red.bold);
    console.log();
    console.log();

    var deployFunctions = [
        {
            command: 'cd ' + envOptions.folder + ' && pwd',
            log: false
        },
        {
            command: 'pwd'
        },
        {
            command: 'su ' + envOptions.user,
            log: false
        },
        {
            command: 'git pull'
        },
        {
            command: 'chmod 0777 * -R',
            log: false
        }
    ];
    async.eachSeries(deployFunctions, function (item, callback) {
        deployment.ssh2.exec(item.command, function (err, stream) {
            deployment.logExec(item);
            stream.on('data', function (data, extended) {
                console.log(data.toString().trim());
                console.log(); …
Run Code Online (Sandbox Code Playgroud)

javascript ssh shell node.js node-modules

5
推荐指数
1
解决办法
4852
查看次数