読者です 読者をやめる 読者になる 読者になる

約束の地

あの日あの時のキャロの想い出

Linux

Docker で Apache Solr を動かす方法

Apache Solr ご存知、全文検索システムです。これをDockerで起動します。

Wekan で SMTP サーバを設定せずにパスワードリセットを行いたいとき

環境 Docker 運用 v0.23 2017-05-21 結論 コンソールにメールの内容(パスワードリセットするためにアクセスする URI)が表示されるので、そこの情報をコピーしてアクセスする。 Docker 運用ならばdocker-composeの際に-dを付けないで実行すればコンソールに…

Wekan で「管理者」権限を追加したい場合やユーザを削除したい場合

環境 Docker 運用 v0.23 2017-05-21

Wekan でメールアドレス認証ができない場合

環境 Docker 運用 v0.23 2017-05-21 結論 現状どうしようもないみたいです(下掲の Opened Issue 参照)。Minor bugとありますが、結構やっかいなバグだと思います。 対応策(概略) データベースを直接書き換える。

Wekan の Tips

Wekan OSS のカンバンツールであるWekanの Tips を書いていきます。重要な Tips については別記事にして、軽めの Tips を書きます。

Wekan を Docker で動かす方法

Wekan OSS のカンバンツールのひとつとしてWekanというプロダクトがあります。 Wekan — open-source kanban Trello-likeって書いてしまっているように、Trello の OSSクローン 的な位置付けですね。 これを Docker でインストールします。

Knowledge で「組み込みデータベース」から「カスタム設定のデータベース」に移行する方法

Knowledge で用いるデータベース Knowledge では初期のデータベースとして「組み込みデータベース」が用いられています。このデータベースを用いていると、設定画面の「システム設定」→「データ管理」→「データベースの接続先変更」にて Warning(的なもの)…

Knowledge を Docker で運用する

Knowledge 「オープンソースの情報共有サービス」として Knowledge というプロダクトがあります。類似のウェブサービスに引けを取らない素敵なプロダクトです。 個人規模からチーム規模まで、様々な形態で便利に使えるサービスだと思います。

Docker 運用の Knowledge をバージョンアップしたらメールが送信できなくなった

Knowledge 「オープンソースの情報共有サービス」として Knowledge というプロダクトがあります。類似のウェブサービスに引けを取らない素敵なプロダクトです。 個人規模からチーム規模まで、様々な形態で便利に使えるサービスだと思います。

Rails で gem ファイルを更新した場合はサーバを再起動しないと適用されない

結論 標題の通り。 感想 あいかわらずこういうところでプチハマりをして悲しい。

Vagrant で作った仮想マシンへの SSH が失敗する場合

結論(の一つ) $ rm ~/.ssh/known_hosts なぜなのか ~/.ssh/known_hostsが既に存在していて、フィンガープリントが一致していないから。仮想マシンを壊して作り直すなどするとファイルが残ってしまってこういう事態になってしまう。ただし、vagrant sshをし…

Ubnutu 16.04 LTS にてシェルスクリプトで source コマンドを使う方法

結論 #!/bin/bash shopt -s expand_aliases source ~/.bashrc

sed でグループマッチをしようとして invalid reference ... on `s' command's RHS とエラーが出る場合

結論 グループ化を示すカッコをエスケープする。 例 だめ $ cat sample.txt | sed -e `s/foo(.*)bar/\1/` オッケー $ cat sample.txt | sed -e `s/foo\(.*\)bar/\1/` 感想 こんなので結構ハマってしまって悔しい。

Vagrant の ubuntu/xenial64 Box における初期ユーザ名とパスワード

結論 以下のファイルに書いてあります(一部ディレクトリ名が異なる場合は適宜読み替えを)。 Linux /home/username/.vagrant.d/boxes/ubuntu-VAGRANTSLASH-xenial64/20170425.0.0/virtualbox/Vagrantfile Windows(Windows 7 以降) C:\Users\username\.vag…

bundle コマンド と bundler コマンドの違い

結論 無い。

Ubuntu 16.04 LTS に VirtualBox と Vagrant をインストールする方法

Ubuntu「に」Vagrant環境を構築する Windows や macOS「に」Vagrant の環境を構築する記事はよく見ますが、Ubuntu「に」構築する記事はあまり見ないのでまとめます。とは言え、ドキュメントどおりです。

Ubuntu 16.04 LTS で Squid のベーシック認証を設定する方法

Squid のベーシック認証を Ubuntu 16.04 LTS で 検索すると出てくる記事が CentOS のものや、バージョンが古いものが多いのでここでまとめてみます。SquidのバージョンはVersion 3.5.12です。

Squid で cache_dir を設定したら接続に失敗する場合

Squid Squid自体の説明やインストール方法は割愛します。バージョンはVersion 3.5.12です。 cache_dir を設定したら接続に失敗する /etc/squid/squid.confを編集して*1、cache_dirを有効にしたら接続に失敗した場合の対処法です。 *1:Ubuntu 16.04 LTS の場…

Ubuntu 16.04 LTS にてデフォルトディレクトリの名前を英語にする方法

デフォルトディレクトリの言語 Ubuntu を日本語の iso から普通にインストールすると、以下のようにホームのディレクトリの名前が日本語になるかと思います。

lsof -i:ポート番号 を実行しても結果が表示されないとき

結論 sudoしましょう。 sudo なしの場合 $ lsof -i:80 $ sudo ありの場合 $ sudo lsof -i:80 COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME apache2 1663 root 4u IPv6 20458 0t0 TCP *:http (LISTEN) apache2 9655 www-data 4u IPv6 20458 0t0 TCP *…

Docker で "docker: Error response from daemon: containerd: container not started." というエラーが出たとき

Docker 実行時にエラー docker runとかdocker-compose upとかした際にdocker: Error response from daemon: containerd: container not started.というエラーが出た場合の対処方法です。 結論 再起動する。 再起動してもダメなら 分かりません……。

rbenv を使って Ruby のバージョンを変えて Rails の環境を構築する方法(Ubuntu 16.04 LTS)

Rails で用いる Ruby のバージョンを手軽に変更する rbenv を用いて Ruby のバージョンを自由に変更して Rails の環境を構築する方法です*1。対象としているのは Ubuntu 16.04 LTS ですが、他の場合でもだいたい一緒だと思います。 *1:特に Rails の環境構築…

MySQL のアップグレード時に Mroonga(MeCab)の設定により失敗した場合

MySQL をアップグレード MySQL をapt-get upgradeしたとします。それで下記のようなエラーメッセージが出たとします。 依存関係の問題 - 設定を見送ります 処理中にエラーが発生しました: mysql-server-5.7 mysql-server mysql-server-5.7-mroonga mysql-ser…

Vagrant を既存のローカルネットワークに接続する

Vagrant で既存のローカルネットワークに接続する まず、デフォルトで有効になっているconfig.vm.network "private_network"を無効にします。config.vm.network "private_network", ip: "192.168.33.10"のように有効化されているはずです。 config.vm.networ…

Mastodon を Docker で起動する方法

Mastodon を Docker で起動する ご存知 Mastodon です。以下は Windows の Vagrant 上の Ubuntu 16.04 LTS での内容ですが、おそらくどの環境でも通じると思います。

Vagrantfile を修正して Windows 上のフォルダと Ubuntu 上のフォルダを同期させる方法

記事タイトル 思いっきりWindowsとUbuntuって限定してしまっていますが、便宜上のことであり、いわゆる「ホスト」と「ゲスト」間なら何でもオッケーです。 方法(Vagrantfile の修正) Vagrantfileのconfig.vm.synced_folderを修正してあげましょう。ここで…

Windows の VirtualBox の Vagrant で ubuntu/xenial64 の環境を構築する手順(一般ユーザ)

Vagrant で Ubuntu 以前にこんな記事を書きました。ただ、思いっきり root 前提です。 一般ユーザを作る 上記の記事を参考に、一般ユーザを作ります。大したことはしません。 一般ユーザを作成する 以降、作成する一般ユーザの名前をmurayamaとします。まず…

Ubuntu 16.04 LTS でコマンドラインから Gmail 経由の ssmtp でメールを送る方法

コマンドラインからのメール送信 まあ普通はPostfixとかsendmailを使うかと思いますが、サクッと軽量に済ませるためにssmtpを使ってみましょう。 インストール 入れてしまいます。 $ sudo apt-get install ssmtp 設定ファイルの場所 /etc/ssmtpです。ssmtp.c…

Ubuntu 16.04 LTS の nginx で PHP を使えるようにする

最低限 ごちゃごちゃ書くと論点を見失うのでシンプルに書きます。 インストール nginx と php-fpm を入れます。 $ sudo apt-get install nginx $ sudo apt-get install php-fpm nginx の設定ファイルの編集 場所は/etc/nginx/sites-available/defaultです。…

Docker の中の Apache で PHP の shell_exec() すると実行できるときとできないときがある

Webブラウザから PHP の exec 系統のコマンドを実行する ある程度のセキュリティはちゃんと意識した上で、シェルスクリプトを Webブラウザ 上から叩くときなどに便利です。 Docker 上だと が、Docker 上の Apache(PHP)だと「実行できたりできなかったり」…

Ubuntu 16.04 LTS に MongoDB をインストールする

MongoDB のインストール 素の状態でapt-get install mongodbでインストールすると現状2.6.10がインストールされます。3.X.Xを入れたいですね。

Ubuntu 16.04 LTS で MongoDB の認証を有効にする方法

MongoDB まずはインストールしましょう。 認証ユーザの追加 db.addUser()はdeprecatedです。ダメです。db.createUser()を使いましょう。roleとかdbとかは適切なものを。 > use admin > db.createUser( { user: "username", pwd: "password", roles: [{ role:…

Embulk で MySQL に大量のデータを流し込む際にエラーが出る場合

Embulk 今さら説明の必要はないと思いますが、データをいい感じに流してくプロダクトです。 MySQL に大量のデータを流し込み この Embulk で 100万件 規模の大量のデータを MySQL に流し込もうとすると以下のようなエラーが出てしまいました。 The total num…

embulk-input-mysql の incremental_columns の設定でハマった

embulk-input-mysql ご存知、Embulk 用の MySQL の input プラグインです。 incremental と incremental_columns 設定項目の一つにincrementalという項目があり、ここをtrueにするとこの項目で指定されたカラムを基準として最終取得したレコードの情報を保存…

Ubuntu 16.04 LTS の MySQL で STRICT_TRANS_TABLES を無効にする方法

STRICT_TRANS_TABLES MySQL には設定項目にSTRICT_TRANS_TABLESという項目があります。これを無効にする方法です。 結論 /etc/mysql/mysql.conf.d/mysqld.cnfに以下のように書きます*1。必要に応じて内容は調整しましょう。 # STRICT_TRANS_TABLES を除外 sq…

Embulk に MySQL のプラグインを入れる方法

Embulk に MySQL の Plugin を入れる 情けないハマり方をしたので反省文。 失敗したコマンド $ embulk gem install mysql 成功したコマンド $ embulk gem install embulk-input-mysql $ embulk gem install embulk-output-mysql 結論 自分が情けない。

MySQL で改行を検索する方法

結論 CHAR(13)です。文字列として連結して使用する場合はCONCATを使いましょう。 例 SELECT * FROM table_name WHERE column_name LIKE CONCAT('%', CHAR(13), '%') ;

MySQL で Lost connection to MySQL server during query エラーが出た場合

Lost connection to MySQL server during query MySQL でクエリを発行した際に、Lost connection to MySQL server during queryというエラーメッセージが出ることがあります。これは事実を表しただけのメッセージであり、どうすればエラーが出なくなるのかが…

Ubuntu 16.04 LTS での MeCab の辞書の場所と確認

結論 辞書の場所 ここです。 /var/lib/mecab/dic 実は以下の設定ファイルに書いてあります。これは Mroonga などでも使われます。 /etc/mecabrc 辞書の確認 以下を。 $ sudo update-alternatives --config mecab-dictionary alternative mecab-dictionary (/…

Idiorm のインストール方法

Idiorm Idiorm をインストールする方法です。 Composer で これでいいでしょう。 $ composer require j4mie/idiorm 書いた動機 ずばり上記のコマンドがドキュメント内に見当たらなかった*1。 *1:見落としているだけかも

Goutte(グート)でスクレイピングをする準備

Goutte PHP のスクレイピング用ライブラリであるGoutte(「グート」と読むらしい*1)を使うための準備の方法です。実際の使い方はオフィシャルのドキュメントを見るほうが早いでしょう。 php-curl と php-xml を入れる 以下、Ubuntu 16.04 LTS を用いた場合…

Embulk で Operation failed (0:08003) エラーが出た場合は out のサイズを見直してみる

Embulk でインターネット越しの転送 ローカルネットワークでは問題なかったのですが、インターネット越しに Embulk で大量のデータを送信しようとするとOperation failed (0:08003)というエラーが出てしまいました。Output pluginsはembulk-output-mysql(ht…

Embulk でレジューム(差分実行)するためには実行時に -o オプションを付ける

Embulk ご存知Embulk(http://www.embulk.org/)ですが、Fluentd(http://www.fluentd.org/)とともにとても便利なプロダクトですよね。データベースの実質的なレプリケーションもこれで柔軟に行えたりします。プラグインにもよりますが、オプション指定も豊…

MySQL でテーブルを一括削除する方法

テーブルの一括削除 MySQL においてテーブルをDROP TABLEで削除する際にはワイルドカードを用いることができません。何とかしたいですね。 grepしてパイプでつなげる 以下のようにコマンドラインから投げてやれば、db_nameに存在する複数のテーブルを削除で…

Ubuntu 16.04 LTS で MySQL のスロークエリログを出力する方法

スロークエリログ 一定の条件を設定し、それを満たす(満たしてしまう)クエリに対してログを吐き出す設定です。パフォーマンス改善などに役立ちます。 設定ファイル 以下のファイルに追記します。 /etc/mysql/mysql.conf.d/mysqld.cnf 設定内容(設定項目)…

PostgreSQL でユーザを追加して権限を与える方法

概略 2段階の操作が必要 まずユーザ(ロール)を作成する その後に権限を付与する

MySQL でユーザを追加して権限を与える方法

概略 2段階の操作が必要 まずユーザを作成する その後に権限を付与する

Fluentd の tail Input Plugin で CSV ファイルを読み込む際は read_from_head を true にする

Fluentd で CSV ファイルを読み込む Fluentd を用いて CSV ファイルを読み込む際は、tail Input Plugin を用いるのが定石だと思います。formatでcsvが指定できますし。 待てど暮らせど出力してくれない しかしながら、以下のような感じで conf ファイルを書…

Ubuntu 16.04 LTS に PostgreSQL の最新版をインストールする

PostgreSQL の最新版をインストール デフォルトのリポジトリに対して公式リポジトリを追加して、apt-getでPostgreSQLの最新版をインストールします。 公式ページ やり方は以下のページに書いてあります。 PostgreSQL: Linux downloads (Ubuntu) 具体的方法(…

Ubuntu 16.04 LTS の MySQL にて外部のアドレスから接続する方法

結論 /etc/mysql/mysql.conf.d/mysqld.cnfのbind-addressの設定を変更して、MySQL を再起動しましょう。一番てっとり早いのはbind-addressをコメントアウトすることです。 補足 ユーザ単位での許可も忘れないようにしましょう。

Powered by はてなブログ