CentOS7.3にemacsをインストールする。
Redmine3.3をDocker上の環境に整備する機会があったので、その備忘録。 今回は、REST APIを操作するpython_redmineを利用するための環境設定の続きで、 コーディングする際のエディタである「emacs-24」をインストールする
なお、「emacs-24」のソースコードが「emacs-24.4.tar.gz」あらかじめ、 ダウンロードされているものとして、以降を記載する。
目次
- 目次
- OS環境情報
- gccコンパイラのインストールする
- コンパイル時「`tputs' was not found in any library.というエラーが出た」ので、その対処
- emacsのコンパイル&インストール
- emacsの初期設定(init.el)
- pythonモード時ののタブ幅
- emacs起動
- Pythonソースコードのインデントを深くor浅くする技
OS環境情報
- 作業開始時点の環境は、下記のOSを最小インストールした状態から開始
[root@docker ~]# cat /etc/redhat-release CentOS Linux release 7.3.1611 (Core) [root@docker ~]#
gccコンパイラのインストールする
[root@docker emacs-24.4]# yum install gcc
コンパイル時「`tputs' was not found in any library.というエラーが出た」ので、その対処
後述のemacsコンパイル時、
tputs' was not found in any library.と「
tputs' was not found in any library.というエラーが出た」ので、その対処をあらかじめしておく。
[root@docker ~]#wget http://ftp.gnu.org/pub/gnu/ncurses/ncurses-5.9.tar.gz [root@docker ~]#tar -zxvf ncurses-5.9.tar.gz [root@docker ~]#cd ncurses-5.9 [root@docker ~]#./configure [root@docker ~]#make [root@docker ~]#make install
必須ではないと思うが、「Development Tools」のyumパッケージをインストールしておく
[root@docker emacs-24.4]# yum groupinstall -y "Development Tools"
emacsのコンパイル&インストール
今回は、OS自体、X-Windowsがインストールされていないテキストモード環境のため、「 --without-x」でインストールする
[root@docker src]# tar zxvf emacs-24.4.tar.gz [root@docker emacs-24.4]# ./configure --without-x [root@docker emacs-24.4]# make [root@docker emacs-24.4]# make install
emacsの初期設定(init.el)
emacsの設定は、下記書籍を参考にした設定(init.el)をずっと、利用してきたのでその設定を移行する。
[改訂新版]Emacs実践入門―思考を直感的にコード化し、開発を加速する (WEB+DB PRESS plus)
- 作者: 大竹智也
- 出版社/メーカー: 技術評論社
- 発売日: 2017/09/22
- メディア: 単行本(ソフトカバー)
- この商品を含むブログを見る
pythonモード時ののタブ幅
上記の書籍以外の設定としては、 pythonモードのタブ幅を設定しておく。
;;python-mode(タブ幅4) (add-hook 'python-mode-hook '(lambda() (setq indent-tabs-mode t) (setq indent-level 4) (setq python-indent 4) (setq tab-width 4)))
emacs起動
Pythonソースコードのインデントを深くor浅くする技
地味に、よく使う技。備忘録
EmacsでPythonソースコードのインデントを深くor浅くする技 | 三鷹台でひきこもるプログラマの日記
- C-c > (インデント深く)
- C-c <(インデント浅く)
【Redmine3.3】python_redmineを利用するための環境を整備する
Redmine3.3をDocker上の環境に整備する機会があったので、その備忘録。 今回は、REST APIを操作するpython_redmineを利用するための環境設定。
目次
OS環境情報
- 作業開始時点の環境は、下記のOSを最小インストールした状態から開始
[root@docker ~]# cat /etc/redhat-release CentOS Linux release 7.3.1611 (Core) [root@docker ~]#
pythonのバージョン
- 既に以下のpythonがインストーされているものとする。
[root@docker ~]# python -V Python 2.7.5 [root@docker ~]#
pipのインストール
- 以下で、pipをインストールする。
[root@docker ~]# curl -kL https://bootstrap.pypa.io/get-pip.py | python % Total % Received % Xferd Average Speed Time Time Time Current Dload Upload Total Spent Left Speed 100 1558k 100 1558k 0 0 1638k 0 --:--:-- --:--:-- --:--:-- 1638k Collecting pip Downloading pip-9.0.1-py2.py3-none-any.whl (1.3MB) 100% |????????????????????????????????| 1.3MB 360kB/s Collecting setuptools Downloading setuptools-36.6.0-py2.py3-none-any.whl (481kB) 100% |????????????????????????????????| 481kB 729kB/s Collecting wheel Downloading wheel-0.30.0-py2.py3-none-any.whl (49kB) 100% |????????????????????????????????| 51kB 3.2MB/s Installing collected packages: pip, setuptools, wheel Successfully installed pip-9.0.1 setuptools-36.6.0 wheel-0.30.0 [root@docker ~]#
- pipのバージョン
[root@docker ~]# pip -V pip 9.0.1 from /usr/lib/python2.7/site-packages (python 2.7) [root@docker ~]#
python-redmineのインストール
[root@docker ~]# pip install python-redmine Collecting python-redmine Downloading python_redmine-2.0.2-py2.py3-none-any.whl (596kB) 100% |????????????????????????????????| 604kB 622kB/s Installing collected packages: python-redmine Successfully installed python-redmine-2.0.2 [root@docker ~]#
【Redmine3.3】ナレッジ管理とドキュメント管理プラグインのインストール
Redmine3.3をDocker上の環境に整備する機会があったので、その備忘録。 今回は、Redmine3.3上に以下のプラグインをインストール
- knowledgebase(ナレッジ管理)
- dmsf(ドキュメント管理)
目次
knowledgebaseのインストール
- redmineのコンテナ内のシェルに入る。
[root@docker ~]# docker exec -i -t redmine /bin/bash
- redmineのコンテナ内のシェルに入った後、以下を実行
root@24bdbf246513:/home/redmine/redmine# cd plugins/ root@24bdbf246513:/home/redmine/redmine/plugins# root@24bdbf246513:/home/redmine/redmine/plugins# git clone git://github.com/alexbevi/redmine_knowledgebase.git redmine_knowledgebase root@24bdbf246513:/home/redmine/redmine/plugins# cd .. root@24bdbf246513:/home/redmine/redmine/plugins# bundle install root@24bdbf246513:/home/redmine/redmine/plugins# cd .. root@24bdbf246513:/home/redmine/redmine# bundle exec rake redmine:plugins:migrate NAME=redmine_knowledgebase
- dockerを再起動する。
[root@docker ~]# docker stop redmine redmine [root@docker ~]# docker start redmine
dmsfのインストール
- redmineのコンテナ内のシェルに入る。
[root@docker ~]# docker exec -i -t redmine /bin/bash
- redmineのコンテナ内のシェルに入った後、以下を実行
root@b9a9f615de4c:/home/redmine/redmine/plugins# cd plugins/ root@b9a9f615de4c:/home/redmine/redmine/plugins# git clone -b v1.5.6 https://github.com/danmunn/redmine_dmsf root@b9a9f615de4c:/home/redmine/redmine/plugins# cd .. root@b9a9f615de4c:/home/redmine/redmine# bundle install --without xapian root@b9a9f615de4c:/home/redmine/redmine# bundle exec rake redmine:plugins:migrate RAILS_ENV=production
- dockerを再起動する。
[root@docker ~]# docker stop redmine redmine [root@docker ~]# docker start redmine redmine [root@docker ~]#
【Redmine3.3】issue_templatesとAttach image from clipboardプラグインのインストール
Redmine3.3をDocker上の環境に整備する機会があったので、その備忘録。 今回は、Redmine3.3上に以下のプラグインをインストール
- issue_templates(チケットのテンプレート化)
- Attach image from clipboard(クリップボードから直接画像を直接添付)
目次
issue_templatesのインストール
- redmineのコンテナ内のシェルに入る。
[root@docker ~]# docker exec -i -t redmine /bin/bash
- redmineのコンテナ内のシェルに入った後、以下を実行
root@24bdbf246513:/home/redmine/redmine# cd plugins/ root@24bdbf246513:/home/redmine/redmine/plugins# hg clone https://bitbucket.org/akiko_pusu/redmine_issue_templates root@24bdbf246513:/home/redmine/redmine/plugins# cd .. root@24bdbf246513:/home/redmine/redmine# bundle update root@24bdbf246513:/home/redmine/redmine# bundle install root@24bdbf246513:/home/redmine/redmine# bundle exec rake redmine:plugins:migrate RAILS_ENV=production
- dockerを再起動する。
[root@docker ~]# docker stop redmine redmine [root@docker ~]# docker start redmine
Attach image from clipboardのインストール
- redmineのコンテナ内のシェルに入る。
[root@docker ~]# docker exec -i -t redmine /bin/bash
- redmineのコンテナ内のシェルに入った後、以下を実行
root@24bdbf246513:/home/redmine/redmine# cd plugins/ root@24bdbf246513:/home/redmine/redmine/plugins# git clone git://github.com/peclik/clipboard_image_paste.git Cloning into 'clipboard_image_paste'... remote: Counting objects: 419, done. remote: Total 419 (delta 0), reused 0 (delta 0), pack-reused 419 Receiving objects: 100% (419/419), 257.95 KiB | 0 bytes/s, done. Resolving deltas: 100% (149/149), done. root@24bdbf246513:/home/redmine/redmine/plugins# root@24bdbf246513:/home/redmine/redmine/plugins# root@24bdbf246513:/home/redmine/redmine/plugins# exit
- dockerを再起動する。
[root@docker ~]# docker stop redmine redmine [root@docker ~]# docker start redmine redmine [root@docker ~]#
【Redmine3.3】view-customizeのインストール
Redmine3.3をDocker上の環境に整備する機会があったので、その備忘録。 ここでは、Redmineのプラグイン「view customize plugin」インストール
目次
view-customizeのインストール
redmineのコンテナ内のシェルに入って以下作業
[root@docker ~]# docker exec -i -t 24bdbf246513 /bin/bash root@24bdbf246513:/home/redmine/redmine# cd plugins/ root@24bdbf246513:/home/redmine/redmine/plugins# root@24bdbf246513:/home/redmine/redmine/plugins# git clone https://github.com/onozaty/redmine-view-customize.git Cloning into 'redmine-view-customize'... remote: Counting objects: 273, done. remote: Total 273 (delta 0), reused 0 (delta 0), pack-reused 273 Receiving objects: 100% (273/273), 138.79 KiB | 0 bytes/s, done. Resolving deltas: 100% (101/101), done. root@24bdbf246513:/home/redmine/redmine/plugins# mv redmine-view-customize view_customize root@24bdbf246513:/home/redmine/redmine/plugins# cd .. root@24bdbf246513:/home/redmine/redmine# bundle exec rake redmine:plugins:migrate RAILS_ENV=production Migrating view_customize (View Customize plugin)... == 1 CreateViewCustomizes: migrating ========================================== -- create_table(:view_customizes) -> 0.4526s == 1 CreateViewCustomizes: migrated (0.4528s) ================================= == 2 AddColumnViewCustomizes: migrating ======================================= -- add_column(:view_customizes, :is_enabled, :boolean, {:null=>false, :default=>true}) -> 0.6943s -- add_column(:view_customizes, :is_private, :boolean, {:null=>false, :default=>false}) -> 0.6576s -- add_column(:view_customizes, :author_id, :integer, {:null=>false, :default=>0}) -> 0.8704s == 2 AddColumnViewCustomizes: migrated (2.2239s) ============================== root@24bdbf246513:/home/redmine/redmine# root@24bdbf246513:/home/redmine# exit
【Redmine3.3】Docker上で起動する
Redmine3.3をDocker上の環境に整備する機会があったので、その備忘録。
目次
- 目次
- 参照書籍
- OS環境
- docker環境
- docker imageの取得
- docker imageの確認
- データ保存場所の作成
- redmine用mysqlコンテナ起動
- redmine用コンテナ起動
- コンテナ起動の確認
参照書籍
- 作者: 前田剛
- 出版社/メーカー: 秀和システム
- 発売日: 2016/12/07
- メディア: Kindle版
- この商品を含むブログ (1件) を見る
OS環境
[root@docker ~]# cat /etc/redhat-release CentOS Linux release 7.3.1611 (Core) [root@docker ~]#
docker環境
[root@docker ~]# docker -v Docker version 1.12.6, build 96d83a5/1.12.6 [root@docker ~]#
docker imageの取得
[root@docker ~]# docker pull sameersbn/redmine:3.3.1
docker imageの確認
[root@docker ~]# docker images docker.io/sameersbn/redmine 3.3.1 090b1982b352 12 months ago 658.5 MB [root@docker ~]#
データ保存場所の作成
データをホスト側のファイルシステムに永続化するため、下記のディレクトリを作成
[root@docker ~]# mkdir -p /srv/docker/redmine/mysql [root@docker ~]# mkdir -p /srv/docker/redmine/redmine
redmine用mysqlコンテナ起動
[root@docker redmine]# docker run --name=mysql-redmine -d --env='DB_NAME=redmine_production' --env='DB_USER=redmine' --env='DB_PASS=redpass' -v /srv/docker/redmine/mysql:/var/lib/mysql sameersbn/mysql:latest
redmine用コンテナ起動
[root@docker redmine]#docker run --name=redmine -d -p 80:80 --link=mysql-redmine:mysql -v /srv/docker/redmine/redmine:/home/redmine/data sameersbn/redmine:3.3.1
コンテナ起動の確認
[root@docker redmine]# docker ps -a CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 66d6b7edf9fd sameersbn/redmine:3.3.1 "/sbin/entrypoint.sh " 52 seconds ago Up 39 seconds 0.0.0.0:80->80/tcp, 443/tcp redmine 64f25d3057aa sameersbn/mysql:latest "/sbin/entrypoint.sh " 3 minutes ago Up 3 minutes 3306/tcp [root@docker mysql]#
【CheckPointR77.30】検証記⑩(StaticNAT)
ファイアーウォールで有名なCheckPoint社の R77.30について、少し検証する必要があったため、その備忘録。
なお、以降記載の手順は、検証目的のため、必ずしも正規の手順ではないかもしれませんので、ご了承ください。
目次
- 目次
- 前回までの前提
- DMZにWebサーバの配置
- Webサーバ用のオブジェクトとStaticNAT用のオブジェクトの作成
- Webサーバへのアクセス用ルール
- Webサーバへの内部ネットワークからのアクセス
- Webサーバへの外部ネットワークからのアクセス
前回までの前提
前回までで、構成の概要を決めながら、
Gaiaのインストールを3台実施し、
さらに、マネージメントサーバを構築し、
ファイアーウォールゲートウェイ(2台)を構築し、
IPアドレスを設定し、
staticルーティングまでを設定し、
Checkpoint管理コンソール製品「SmartConsole」をインストールし、
ファイアーウォールクラスタの構築を行い、
HideNATの設定を行った。
以降では、宛先アドレスの変換を行うため、「StaticNAT」を実施する。
DMZにWebサーバの配置
まず、DMZ(ここでは、「172.16.1.0」)ネットワークに Webサーバを構築する。
DMZネットワーク上に、Webサーバを用意し、(ここでは、「172.16.1.20」)
Apacheサービスを起動しておく。
Webサーバ用のオブジェクトとStaticNAT用のオブジェクトの作成
Webサーバ用のオブジェクト実体を作成する。
次に、外部(ここでは、「192.168.3.0」)ネットワークからのアクセス用のオブジェクト (ここでは、「192.168.3.80」だが、通常はグローバル用IP用のオブジェクトになるだろう。)を作成し、
作成した外部(ここでは、「192.168.3.0」)ネットワークからのアクセス用のオブジェクトに、 (「192.168.3.80」→ 「172.16.1.20(Webサーバの実体オブジェクト」)への StaticNAT(宛先のアドレス変換を実施する(グローバルIP→プライベートIPへのアドレス変換イメージ)
Webサーバへのアクセス用ルール
以下のルールを作成する。
- ①内部ネットワーク→Webサーバへの実体(「172.16.1.20(Webサーバの実体オブジェクト」)へのhttpアクセス。
- ②外部ネットワーク→StaticNAT用のオブジェクト(「192.168.3.80(Webサーバの実体へStaticNATを行うオブジェクト」)へのhttpアクセス。
Webサーバへの内部ネットワークからのアクセス
内部ネットワーク→Webサーバへの実体(「172.16.1.20(Webサーバの実体オブジェクト」)へのhttpアクセスを行う。 アクセス要件としては、下記の通り。
- ①送信元:192.168.1.45
- ②宛先:172.16.1.20
Webサーバへアクセスができることを確認する。
Webサーバ側のアクセスログを確認する。 アクセスログの送信元アドレスが、「172.16.1.250」になっていることがわかる。 ここでは、「172.16.1.250」は、ファイアーウォールクラスタのVIPであるため、 送信元アドレスが、ファイアーウォールクラスタの送信元アドレスに変換されないようにする。
具体的には、内部ネットワーク(ここでは、「192.168.1.0」)から、 DMZネットワーク(ここでは、「172.16.1.0」)へのアクセス時、 送信元アドレスが、ファイアーウォールクラスタのVIPではなく、 オリジナルの送信元アドレス(ここでは、「192.168.1.0」)になるように NAT変換設定を行う。
再度、Webサーバへアクセスする。
Webサーバ側のアクセスログを確認する。 このとき、ファイアーウォールクラスタのVIPとなっていた 送信元アドレスが、オリジナルの送信元アドレス (ここでは、「192.168.1.45」)になっていることを 確認する。
Webサーバへの外部ネットワークからのアクセス
外部ネットワーク→StaticNAT用のオブジェクト(「192.168.3.80(Webサーバの実体へStaticNATを行うオブジェクト」)への
httpアクセスを行う。 アクセス要件としては、下記の通り。
- ①送信元:192.168.3.5
- ②宛先:192.168.3.80(⇒Webサーバへの実体(「172.16.1.20」)へStaticNATされる)
外部ネットワークから、StaticNAT用のオブジェクト「192.168.3.80」へアクセスできることを 確認する。
ファイアーウォール側のログを確認し、 192.168.3.80(⇒Webサーバへの実体(「172.16.1.20」)へStaticNATされていることを 確認する。