CSSでコンテンツを内包する要素を可変横幅にし中央配置する

内包するブロック要素をコンテンツのサイズに合わせた横幅にし、さらに中央配置したい場合は、内包するブロック要素にwidth:auto,display:block,margin:autoを指定する。

<div class="foo">
<a href="http://example.com">
<span class="bar">
inline-block<br>
centering
</span>
</a>
</div>
.foo {
min-width: 500px;
margin: 10px;
padding: 10px;
background-color: #000;
}
a {
display: block;
padding: 10px;
text-align: center;
background-color: #900;
color: #fff;
}
.bar {
display: inline-block;
padding: 10px;
width: auto;
margin: 0 auto;
background-color: #009;
}

サンプル
https://codepen.io/anon/pen/JXjxVL

参考
http://stackoverflow.com/questions/18524722/center-an-auto-width-div

Dockerでコンテナをまとめて削除する

複数指定すればまとめて削除できる

docker rm container1 container2 container3

すべてまとめて削除する場合はこちら

docker rm `docker ps -a -q`

まとめて削除する場合はdocker rmとなっているので現在起動中のものはエラーが出て削除できなくなるだけなので大丈夫。起動していても問答無用で削除したい場合はdocker rm -fとすれば良いが、使った事はない。

(追記) 停止しているコンテナに限定して削除をする

docker rm $(docker ps -q -f status=exited)

@hidekuro さんに教えてもらった方法です。先の例よりもこちらの方が無駄なエラーが出ないので、停止しているコンテナをまとめて消す場合はこちらを使おうと思います。

Java – HbaseのScanでlimit値を指定する

以下のHbaseShellのコマンドと同様のことをJavaで行いたい

scan 'test_data', { LIMIT=>100 }

JavaでScanを使うにはorg.apache.hadoop.hbase.client.Scanを使う。さらにこれにfilterを適用する場合はorg.apache.hadoop.hbase.filter.Filterを使ってfilterを定義したものを、Scanのインスタンスにscan.setFilter(filter);でセットします。以下のページを参考にしました。

Scanにlimitを適用する場合のサンプルコード

````java
long limit = 10;
Filter limitFilter = new PageFilter(limit);
Scan scan = new Scan();
scan.setFilter(limitFilter);

この辺りは情報が少なく手探りなので間違いがあればご指摘ください。

MySQLのデータベースの各テーブルのレコード数とデータサイズとインデックスサイズを調べる

こちらを参考にしました。
http://d.hatena.ne.jp/sho-yamasaki/20120405/1333640589

試しに以下のように実行してみます。

SELECT
table_name, engine, table_rows AS tbl_rows, avg_row_length AS rlen,
FLOOR((data_length+index_length)/1024/1024) AS total_MB,
FLOOR((data_length)/1024/1024) AS data_MB,
FLOOR((index_length)/1024/1024) AS index_MB
FROM
information_schema.tables
WHERE
table_schema=database()
ORDER BY
(data_length+index_length) DESC;

実行結果

+----------------+--------+----------+------+----------+---------+----------+
| table_name     | engine | tbl_rows | rlen | total_MB | data_MB | index_MB |
+----------------+--------+----------+------+----------+---------+----------+
| post           | InnoDB |   100266 |   36 |        6 |       3 |        2 |
| user           | InnoDB |    10148 |   46 |        0 |       0 |        0 |
| category       | InnoDB |      738 |   88 |        0 |       0 |        0 |
+----------------+--------+----------+------+----------+---------+----------+
4 rows in set (0.00 sec)

DockerhubのMariadbを立ち上げる

従来はDBをMacに直接インストールしてテストをしたり、開発環境をVMで立ち上げる必要はありましたが、Dockerを使うことで簡単にMySQLを立ち上げられます。

docker run --name mariadb -p 3306:3306 -e MYSQL_ROOT_PASSWORD=password -d mariadb

立ち上げたコンテナには以下のようにして接続します。この場合のパスワードは先程指定したpasswordです。

mysql -h docker.local -u root -p --port 3306

Dockerを使うことで運用だけじゃなく、開発環境などでは複数のバージョンの環境をすぐに用意できるので便利です。

Dockerで既存イメージにタグを付ける

既に存在するイメージに新しく付けたいタグを指定することができます。新しいタグを付けたいがために再度ビルドしていましたが、最近はこれでやっています。

docker tag -f app:development app:production