Code Monkey home page Code Monkey logo

narou-docker's Introduction

Narou.rb Docker Image

Narou.rb を Docker で実行するための Docker Image です。
Docker さえあれば一切環境構築なしで Narou.rb WEB UI を立ち上げることができます。

Narou.rb 作者製です。
最新バージョンへの追随は本体とほぼ同時に行う予定です。

イメージ内容は下記で構成されます。

使い方(docker コマンド編)

docker コマンドで直接コンテナを立ち上げます。
コマンドが長いのでエイリアスを切ったりしましょう。
後述する docker-compose でやったほうが正直楽です。

コマンドを実行したフォルダが小説管理用のフォルダになるので移動しておきます。

$ mkdir ~/novel && cd $_
$ docker run --rm -it -p 127.0.0.1:33000-33001:33000-33001 -v $(pwd):/novel:cached whiteleaf/narou

docker から始まるコマンド1行で WEB UI が起動します。
http://localhost:33000/ にアクセスしてください。

ポートを変える場合、前半部分の 33000-33001 部分を変更するだけでOKです。
例えば 8000 ポートに変える場合は -p 127.0.0.1:8000-8001:33000-33001 と 指定してください(websocket 用のポートのために +1 したポートも併記する必要があります)

使い方(docker-compose 編)

docker-compose のほうが楽なので、こちらを推奨します。
ただし、設定ファイルを1つ用意する必要があります。

コマンドを実行したフォルダが小説管理用のフォルダになるので移動しておきます。

$ mkdir ~/novel && cd $_

下記の内容を docker-compose.yml という名前でを同じフォルダに用意します。

version: "3.7"

services:
  app:
    image: whiteleaf/narou
    command: ["narou", "web", "-np", "33000"]
    volumes:
      - .:/novel:cached
    tty: true
    stdin_open: true
    ports:
      - "127.0.0.1:33000-33001:33000-33001"

ファイルを用意したら下記コマンドを打ちます。

$ docker-compose up

自動的に WEB UI が起動します。
http://localhost:33000/ にアクセスしてください。

ポートを変える場合は docker コマンドと同様に ports の項の前半部分を変更してください。

イメージを更新する

$ docker pull whiteleaf/narou

更新がある場合、上記コマンドで環境を最新にできます

CUI としてコマンドを使いたい場合

docker で直接使う

$ docker run --rm -it -v $(pwd):/novel:cached whiteleaf/narou narou list

docker-compose で使う

docker-compose run --rm app narou list

おまけ
dip を使うと便利です

dip.yml として下記を用意して、

version: "4"
interaction:
  narou:
    description: Run narou command
    service: app
    command: narou
$ dip narou list

# docker-compose up と同じ
$ dip up

# 下記を実行すると、narou コマンドを透過的に実行出来る様になる
$ eval "$(dip console)"
$ narou list

narou-docker's People

Contributors

whiteleaf7 avatar

Stargazers

Makoto Ohtoh avatar

Watchers

James Cloos avatar

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.