サクサク読めて、アプリ限定の機能も多数!
トップへ戻る
iPhone 16e
joppot.info
概要 みなさんこんにちはcandleです。今回は最近メジャーバージョンアップグレードがあったwordpressのgutebergでmarkdownがかけるよという話をします。 主題の通りなのですが、これまでwordpressはmarkdownを書くならプラグインのJP MarkdownやMarkdown EditorやWP-Markdownなどのを使って書く必要がありました。しかしOSSであるがためにやはり更新が遅かったり他のプラグインと干渉してエラーが出たりしました。もちろんgutenbergもまだ十分に問題なく使えるわけではありませんが、標準で導入されたのは大きいと思います。 早速使ってみましょう。 前提 wordpressのバージョンが5.0.0以上である gutenbergのmarkdownを使う wordpressの管理画面から「記事一覧」 から「新規追加」ボタンを押します。 最
概要 みなさんこんにちはcandleです。今回はちょっとしたことですが、忘れない様にまとめておきます。 EC2でRDSを使う場合 EC2の中にMysqlサーバーは必要ありません。 ただmysqlコマンドのみ入れたい場合があります。 その方法を紹介します。 前提 ec2とrdsを使っている mysql-develのインストール mysqlのサーバはyumのmysql-serverです。 それを操作する為のライブラリはmysql-develです。 なので、mysql-develのみをインストールすればokです。 確認してみると yum info mysql-devel インストールします。 sudo yum install mysql-devel これでokです。 試しに、以下を実行するとmysqlが立ち上がらないのがわかります。 sudo service mysqld start 一方で、m
概要 みなさんこんにちはcandleです。今回はSemantic UIを使ってReactのデザイン開発をして見たいと思います。 Semantic UIはCSSフレームワークの1つで他に有名なところはTwitter Bootstrapなどがあります。 一方でSemantic UIは用意されているコンポーネントのシンプルさと使い勝手の良さが評価されています。 前提 create-react-app コマンドが入っている react プロジェクトを作成 適当なフォルダで、以下のコマンドを時刻して、reactプロジェクトを作成します。 create-react-app hello_sematic cd hello_semantic semantic-ui-cssライブラリのインストール semantic-ui-cssはsematic-ui用のcssを提供するライブラリです。 semantic-ui
概要 みなさんこんにちはcandleです。今回はpythonのSphinxを使ってクラスや関数の説明を自動生成します。 前提 Python3を使って説明しますが、おそらくpython2でも動くと思います。 テストファイルを用意する main.pyとdog.pyファイルを作成します。 touch main.py dog.py main.pyに以下を記述します。 from dog import Dog def main(): dog = Dog() dog.show_name() if __name__ == "__main__": main() dog.pyを開いて以下を記述します。 class Dog(object): def __init__(self, name="bob"): self.name = name def bark(): print("Bow Wow") def show
概要 みなさんこんにちはcandleです。今回はplantUMLをサポートするemacsのplantuml-modeを導入して使ってみましょう。 plantuml-modeは以下の3つの機能があります。 シンタックスハイライト 自動補完 プレビューの表示 結構設定することがあるので根気よくやって来ましょう。 前提 plantumlコマンドがある 私はbrewでplantumlを入れましたが、jarファイルを用意してもOKです。 まだの人はこちらを参照してください。 MacにPlantUML環境をbrewを使って構築する plantuml-modeをインストールする plantuml-modeの最新版はel-getにまだ登録されておらず、古い方のplantuml-modeが入ってしまうので直接githubから持って来ます。 Melpaを使っている人は公式サイトをみてインストールしてください。
概要 みなさんこんにちはcandleです。 今回はMacのログインフックを使って、自動的にローカルのipアドレスを割り振ってみたいと思います。 Macでは自動的に127.0.0.1がローカルのIPアドレスとして使えます。 一方、dockerで使う場合では別に用意する必要があったりします。 前提 macを使っている lo0のipアドレスを確認する まずはifconfigコマンドでmacのlo0に割り振られているIPアドレスを確認します。 ifconfig 127.0.0.1があるのがわかります。 ipアドレスを割り振るshファイルを作る IPアドレスを割り振るシェルスクリプトファイルを作成します。 touch ~/.lo0ip.sh ファイルを開いて、以下を記述します。 #!/bin/bash sudo ifconfig lo0 alias 10.200.10.1/24 保存しましょう。 I
English 日本語 概要 みなさんこんにちはcandleです。今回はrails 4のproduction ログをtd-agentで取得してみたいと思います。 数年前にも同じ記事を書いたのですが、説明不足があったりしたので書き直します。 また、後日Rails5での取得の仕方も紹介します。 関連記事 rails5の方は以下の記事を参考にしてください。 td-agentでRails 5のproduction.logを取得する 前提 ruby on railsをproductionモードで動かせる webrickでもnginxでもpumaでもapacheでも良いですが、productionモードで動かせる状態を作っておいてください。 td-agentかfluentdがインストールされている ruby on railsを動かすマシーンにtd-agentかfluentdがインストールされている事が
概要 みなさんこんにちはcandleです。 今回はMacのdocker containerからホストのmysqlにつなぐ方法を紹介します。 例えば、docker上でrailsやwordpressなどを動かす時mysqlにつなぐ事があります。 mysqlのdockerを用意しても良いのですが、データの保持や起動時間など開発中は必要じゃない事が多いです。 その時、Macに入れたmysqlにdockerからアクセスできれば便利ですよね。その方法を紹介します。 前提 docker for macを使っている テスト用のmysqlデータベースを作成する まずはテスト用のデータベースを作成します。 Macのターミナルを開いて、以下のファイルを作成します。 touch ~/pokemondb.sql 以下の内容を記述します。 CREATE DATABASE `pokemondb` DEFAULT CHA
概要 みなさんこんにちはcandleです。 今回は以外に難しい、emacs + eslintの導入をしてみましょう。 emacsは他にもjsHintやjsxHintなどjavascriptの記法をチェックするパッケージがあります。 噂によるとReactやes6など最新のjavascriptの書き方にうまく対応できなかったり、 設定が難しかったりするらしいです。 近年はeslintが主流になってきて、emacsに限らずあらゆる場面で使われるようになってきました。 私もemacsユーザーとして導入してみました。 また、私自身はElispにもnode系のJSのプロフェッショナルではないので、 無駄な記述や間違った書き方をしているかもしれません。よろしくお願いします。 注意 私はターミナルのemacsではうまくいきましたが、Mac GUI版のEmacsではeslintとうまくつなげられませんでした
English 日本語 概要 みなさんこんにちはcandleです。 今回はemacsのreact開発用のメージャーモードのrjsx-modeを導入してみたいと思います。 Reactの開発はこれまで、web-modeまたはjs2-modeのjs2-jsx-modeを使うなどの方法がemacsユーザー間で試行錯誤されてきました。 私も、rjsx-modeの前はjs2-jsx-modeを使っていました。 rjsx-modeはjs2-modeを拡張したものなので、js2-modeの方も違和感なく使えるでしょう。 rjsx-modeはJSXの補完があったり便利です。 前提 emacsがある melpaまたはel-getの環境がある rjsx-modeのインストール rjsx-modeのインストールはmelpaかel-getでできます。 私はel-getを使っていますが、どちらも簡単に説明します。 m
概要 みなさんこんにちはcandleです。今回はChart.js2.0でy軸の最大値、最小値を設定する方法を紹介します。 Chart.js 2.0では特に指定しないと自動的に、y軸の最大値を設定してくれますが、場合によっては自分で設定したい場合があります。 前提 Chart jsが用意されている 最大値と最小値を設定する 今回はこのline chartで試します。 結論から書くと以下のようなサンプルソースコードになります。y軸を指定しているのはoptionsのところです。 $(document).on('ready', function() { var ctx, data, myChart; ctx = document.getElementById('myChart'); if (ctx !== null) { data = { labels: ['January', 'February
概要 みなさんこんにちはcandleです。今回はsshの接続先のホスト名を短くする方法です。 ssh接続は非常に強力なネットワークツールですが、接続先の指定がやや面倒ですね。それを単純にする方法をまとめます。 前提 ssh接続する先がある 一度でもsshで接続したことがある サーバはvirtual boxでもよいし、Lanの中にある別のサーバでも良いし、レンタルサーバでもかまいません。 unixのaliasを使う 一番手っ取り早い方法がaliasを使うことです。 例えば、自分のvirtual box上のubuntuにmacからssh接続する時の例を見てみましょう。 私の場合は下の様にしてssh接続します。 ssh [email protected] これぐらいなら、ターミナルからコマンドを打っても良いからもしれませんが、それさえも回数がかさむと時間がもったいないので、aliasで省
概要 みなさんこんにちはcandleです。今回はvagrantのプライベートキーの指定の仕方です。 vagrantは1.7か1.8でそれぞれのvagrantディレトリの中に生成されるプライベートキーを使用してvmにログインするようになりました。 しかし、場合によってはホームディレクトリの.vagrant.dにあるプライベートキーを使用したい場合があります。 その設定方法を紹介します。 前提 適当なvagrantがある 共通のプライベートキーを使用する設定 vagrantの共通の鍵はホームディレクトの.vagrant.d/insecure_private_keyにあります。 vagrantのイメージがあるディレトリに移動して、Vagrantfileを開きます。 vm.boxあたりに以下を記述します。 config.ssh.insert_key = false 保存しましょう。 sshの鍵を確
概要 みなさんこんにちはcandleです。 今回はrailsでsvgを出力します。 レスポンシブウェブデザインから始まり、最近ではwebでもsvgの使用が増えてきたような気がします。 手こずらずにsvgを表示できるようになっておきましょう。 前提 適当なrailsプロジェクトがある ファイルを設置する この画像をダウンロードするか、自前のsvgファイルを用意します。 ファイルを置く場所はapp/assets/images/になります。 svgファイルをimgタグで読み込む この方法はあまりお勧めしません。本当に簡単にsvgを表示する時だけ使用してください。 svgファイルはimgタグでも読み込めます。 問題はsvgの特徴を生かしきれないことにあります。 適当なviewに以下のように書きます。 <%= image_tag "ringsquare.svg", :width => "150",
概要 みなさんこんにちはcandleです。2014年の後期にmozillaあたりが主導して、無料のssl証明書作ろうという動きがありました。ついに去年の12月にβ版がでたので、早速試してみました。 ちなみに、メージャーアップがあるらしく、今鍵を作ると、今年の3月末までしか使え無いっぽいですね。 いろいろ試行錯誤してわかったのですが、let’s encryptのssl証明書の取得の仕組みは以下のようになっています。 最初に、あなたの公開しているサーバにドメインを紐付けておきます。説明ではhttp://hoge.comというのを例に使用します。 vagrantのubuntuにlet’s encryptのソフトウェアをインストールします。 let’s encryptサーバに向けて、ドメイン名を送信します。let’s encryptサーバは与えられたドメイン名を見て、トークンをvagrantのub
概要 みなさんこんにちはcandleです。今回はfluentdサーバを2台使って、ログの収集を行ってみたいと思います。サーバ2台はどのような環境でも良いのですが、私が今回説明する環境は1つはMac PCもう1つはvagrantのCent OSで行いたいと思います。 ところで、なぜfluentdからfluentdへデータというかログを送信するかというと、ログのマージの冗長化が大きな理由だと思います。 例えば以下のようなサーバ構成でサービスを提供しているとしましょう。 ロードバランサ1台、サーバ3台、データベース1台。 この時、apacheのアクセスログやエラーログ、railsを使っているならrailsログなどはそれぞれのサーバに蓄積します。そうなると、ログのマージが大変になります。それぞれのサーバにアクセスしてscpとかftpとか考えるだけでも大変です。そこで、ログ出力fluentdと収集f
概要 みなさんこんにちはcandleです。今回はwordpressの画像をs3にアップロードします。 私は最近まで別のs3にアップロードするプラグインを使っていたのですが、開発が2年前に止まってしまい、最新のwordpressのバージョンではうまく動かなかったので、wp offload s3に変更しました。 wp offload s3はamazon web service pluginの拡張なので、事前にそちらを入れる必要があります。そこも含めて解説していきます。 前提 amazon s3のiamを取得している。 もしも、まだ取得してない人は、こちらの記事を参照してください。 awsのs3を操作する為のaccess keyとsecret keyを取得する(IAM) s3のバケットを作成しておく Amazon Web Service pluginとWP Offload S3をインストールする
概要 みなさんこんにちはcandleです。今回はwordpress4.4で追加された、retinaやレスポンシブに対応した画像のsrcsetの削除の仕方を紹介します。 wordpressの画像はewwwなどを使っていると、内部で複数のサイズの画像を持ちます。 例えば、サムネイルなら小さい画像にしたりできます。 問題は、投稿に挿入したい際に、retinaでみたい場合に画素数が足りなかったり、モバイルで見る場合は画像が大きすぎて無駄だったりすることです。 そこで、wordpressは4.4からsrcsetというのを導入して、必要に応じたサイズの画像をロードするようになったのですが、私のようにs3にアップロードする人はこれの影響で、s3のアドレスではなく、サーバのアドレスが挿入されてしまい、画像が404になってしまいました。 このような感じです。 <img class="alignnone si
概要 みなさんこんにちはcandleです。今回はruby on railsにsquire editorを導入したいと思います。 squireはオープンソースの便利なwysiwygエディタです。 カスタマイズ性に優れていて、今までckeditorやredactorなど試しましたが、これからはsquireの時代だと確信しています。 これをrailsに組み込んで行きたいと思います。 Squireは基本的にデザインが無い、いわば、wysiwygエディタを作るためのエンジンみたいなものです。 デザインは各自自分でつけるのですが、これが以外に難しいので、 ここはsquireの公式ページにもあるようにtwitter bootstrapにそったデザインを導入して解説します。 前提 適当なrailsプロジェクトがある。 twitterbootstrapがgemか手動で導入されている 今回はtwitter b
概要 みなさんこんにちはcandleです。今回はrakeコマンドで作成したマイグレーションファイルの管理を紹介します。rakeコマンドを使っていると、よくよく考えれば必要の無いファイルがある。とか重複しているとかで、マイグレーションファイルが嵩んでしまう場合があります。 それを整理する方法をやっていきましょう。 前提 railsの環境が整っている テスト用のモデルを作る それではテスト用のカラムを作り、そこでrakeコマンドのテストをします。 もしも、テスト用のカラムがある場合や、別にテストしなくても良い場合はそのまま進めてください。 railsプロジェクトの中で、下のコマンドを実行して、モデルを作成します。 私は例によって、bootstrap3というrailsプロジェクトを使います。 rails g model dbtest name:string description:text 下の
概要 (追記、2018年11月に書き直しました) みなさんこんにちはcandleです。インストールできたopencvを使ってhelloworldを行いましょう。 opencvでhelloworldとはなんぞや、と感じるかもしれませんが、opencvライブラリを使って、画像を表示させようというのが目的です。 前提 opencvがインストールされている ソースを用意する まずはデスクトップにhelloworld.cppファイルを作りましょう。 ターミナルでデスクトップに移動して touch helloworld.cpp で作成できます。 エディタでhelloworld.cppファイルを開きます。エディタはなんでもかまいません。 私はemacsを使用します。 emacs helloworld.cpp 次のソースをコピペします。 #include <opencv2/opencv.hpp> int
概要 みなさんこんにちはcandleです。今回は誤ってデータベースに反映したマイグレーションファイルを不要だと思って削除した時に、NO FILEと出てきてしまった時の対処です。 言うなれば、下のような状態になった時にどうやってNO FILEの履歴を消すかです。 前提 railsの環境が整っている 消したいマイグレーションフィアルのIDを調べる まずは消したいマイグレーションIDを調べます。 下のコマンドをrailsプロジェクトの中で実行しましょう。 bundle exec rake db:migrate:status 私の場合、消したいmigration IDは「20141013154137」です。 上の図を見てもらうと分かるように、Statusが NO FILE となっているマイグレーションもupになっていますよね。ということはデータベースはこのマイグレーションファイルの構造を取り入れて
概要 みなさんこんにちはcandleです。今回はitermのスクロールバックの制限を増やしたり、無制限にする方法を紹介します。 itermのスクロールバックできる量はデフォルトで確か、2000行だと思いました。つまり、大量に結果をターミナル上で表示すると見きれてしまう場合があります。 よくあるのがbrewやyum、aptなどのパッケージ管理ソフトでインストールしてあるソフトを表示しようとすると全て見れなかったりします。 前提 itermを使っている スクロールバック出来る量を2万行にする まずは、無制限ではなく、2万行まで表示するようにしましょう。 メニューバーの「iterm」→「Preferences」を押します。 preference画面の「Profiles」を選んでタブの「Terminal」を選びます。 その中の「Scrollback Lines」の数を調整すればいくらでもスクロール
概要 みなさんこんにちはcandleです。pdfファイルのダウンロードのやり方を紹介します。 前提 railsの環境が出来ている twitterbootstrap gem を使用した環境で説明して行きます。twitterbootstrap gem事態はデザインのライブラリみたいなものなので、必ずしも入れる必要はありません。 サンプルscaffoldを用意する 早速、scaffoldを作ります。下のコマンドを実行しましょう。 今回はscaffoldの記事ではないので、細かく説明はしません。 rails g scaffold Myfile title:string filename:string comment:string マイグレーションファイルが作成されますので、それをデータベースに反映させます。 rake db:migrate scaffoldが完成しました。 twitterboots
概要 みなさんこんにちはcandleです。今回はcakephp2.4以降でphpunitとdebugkitをcomposerを使って導入してみたいと思います。 cakephpは標準でphpunitを使ってテストをします。 導入を簡単に素早くやってみましょう。 今まではpearや手動でやっていたのですが、これがcomposerを使う事で簡単に出来る様になりました。 前提 cakephp2.4以降のプロジェクトがある 私は最新のcakephp2.5.6を使用します。 composerがインストールされている composer.jsonを確認する cakephpプロジェクトにcomposer.jsonがあるか確認します。 これは自分で作成するのではなく、標準で準備されています。 composer.jsonの中身をエディタで見て、phpunitのバージョンが3.7あたりである事を確認します。 これ
概要 皆さん今日はcandleです。今回はsshを使ったfabricの設定をしましょう。 一般にsshにはパスワード認証と公開鍵認証があるので、そのどちらも試してみましょう。 もちろんセキュリティ面で考えれば公開鍵を使う事をおすすめしますが、そこは臨機応変といきましょう。 前提 fabricが動くPCが1台 VMかLAN内のサーバなど、いずれかfabricでアクセスできるサーバが1台 公開鍵認証をする場合はその公開鍵の準備 ネットワークの共通設定 それではfabfile.pyにネットワークの設定をしてみましょう。 まずはコメント欄に日本語を使うので、エンコーディングをutf-8にしておきましょう。 fabricのapiを面倒なので全てインポートします。 # -*- coding: utf-8 -*- from fabric.api import * 接続先のIPアドレスとユーザー名を設定し
概要 みなさんこんにちはcandleです。cakephpではphpのライブラリ管理ツールcomposerと連帯して、便利に必要なライブラリを導入できます。 例えば、cakephpの標準テストツールphpunitもcomposerからインストールできます。 前提 php5.3以上が推奨。 CentoOS上でホームディレクトリに移動します。 cd ~/ 次に下のコマンドでcomposerをダウンロードします。 curl -sS https://getcomposer.org/installer | php ダウンロードが終わると、ホームディレクトリにcomposer.pharというファイルが 作成されます。これが様はcomposerの実行ファイルです。試しにホームディレクトリで下のコマンドを打ってみましょう。 ./composer.phar composerコマンドがホームディレクトリにあるの
概要 railsのckeditorはデフォルトでrailsのuploadsフォルダにアップロードしますが、 それだとサーバの容量を取ってしまうので、画像のアップロード先をS3に上げてみたいと思います。 前提 ruby on railsの環境が整っている ckeditorがフォームに適応されている 私はscaffoldのフォームにckeditorを適応しています。 もしもまだな人は、下のURLを参考にしてください。 ruby on railsのckeditor gemの使い方をscaffoldを用いて解説する carrierwaveとfogをインストールする railsのGemfileを開いて、下の内容を書き込んでください。 もしも、まだrmagickとminimagickが入っていない場合はそれも合わせてGemfileに書き込んでください。 gem 'carrierwave' gem 'f
概要 みなさんこんにちはcandleです。今回はテーブルの照合順序を変更する方法を行います。 この方法はやっても、mysqlクエリー1行ですみます。早速やりましょう。 次の様なcommentsテーブルがあるとします。このテーブルの照合順序は「latin1_swedish_ci」です。 変更するには「SQL」のタブを押します。 照合順序を変更する一般的なSQLクエリーは次のようになります。 ALTER TABLE テーブル名 COLLATE 新しい照合順序 例えば、commentsテーブルの照合順序をutf8_general_ciに変更するには ALTER TABLE comments COLLATE utf8_general_ci となります。 このSQLクエリーを実行すれば、設定変更完了です。変更が適応されたか見てみましょう。 まとめ 照合順序はデータベースの照合順序、テーブルの照合順序
次のページ
このページを最初にブックマークしてみませんか?
『joppot | 技術者ブログ』の新着エントリーを見る
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く