Skip to content

Instantly share code, notes, and snippets.

# Private IPを使うようにしたいので、そのためのオプションを入れたFork版のec2sshを入れる
# 1. gitからgemを入れるため、specific_installをインストール
# 最新のspecific_install + gem 1.8.25 の組み合わせが動かないため、古いバージョンを入れる
# https://github.com/rdp/specific_install/issues/21
sudo gem install specific_install -v 0.2.7
# 2. リポジトリとブランチを指定して、フォーク版のgemを入れる
sudo gem specific_install -l https://github.com/sechiro/ec2ssh.git -b private-ip-feature

Bitnami AMI を使って、Gitlabサーバを立てる際のはまりどころ

AMIからインスタンスを作成したのち、以下の作業が必要となったのでメモ。

0. 使用したAMI

  • GitLab powered by Bitnami 6.7.5-0 on Ubuntu 12.04.3 Previous versions | Sold by Bitnami
    • bitnami-gitlab-6.7.5-0-linux-ubuntu-12.04.3-x86_64-ebs-mp-0e511dbb-6e38-4d85-848a-de8b2997462b-ami-21f3ea48.2 (ami-07286906)

1. パスワードリセット

tmux shortcuts & cheatsheet

start new:

tmux

start new with session name:

tmux new -s myname
@sechiro
sechiro / create-index.sh
Last active August 29, 2015 14:05
ISUCON3予選復習時の設定。
# ISUCON夏期講習からのコピペ
# 【メモ】この設定で試した場合は、以下のmemo_privateがない方がスコアが上がった。
# "ADD INDEX memo_private(user, is_private, created_at)"
# これを入れるとMySQLのCPUボトルネックとなるので、このIndexはデータ更新コストが大きいと考えらえる。
cat <<EOF | mysql -u isucon isucon
ALTER TABLE memos ADD INDEX (is_private, created_at),
ADD INDEX mypage(user,created_at),
EOF
@sechiro
sechiro / ec2ssh.sh
Last active August 29, 2015 14:06
ec2sshぽい何か。VPC内でPrivateDnsNameで接続する用。
aws ec2 describe-instances | jq -r '.Reservations[].Instances[]| (.Tags[] | select(.Key=="Name").Value) + " " + .PrivateDnsName' > /tmp/instance_list
OLDIFS=$IFS
while read line
do
IFS=" "
set -- $line
echo "Host $1
Hostname $2"
done < /tmp/instance_list > /tmp/ssh_config
IFS=$OLDIFS
#!/bin/bash
set -ue
prefix=`basename $0`
timestamp_file=/tmp/$prefix.timestamp
cache_file=/tmp/$prefix.cache
timestamp=`date '+%s'`
cache_time=300
describe_images(){
@sechiro
sechiro / addressbook-convert.sh
Last active August 29, 2015 14:08
Googleからエクスポートしたvcf形式のアドレス帳のふりがなをGratinaで読み込めるよう変換するスクリプト
#!/bin/bash
#
# Googleからエクスポートしたvcf形式のアドレス帳のふりがなをGratinaで読み込めるよう変換するスクリプト
# 変換元ファイルは以下の手順でエクスポートしてください。
# Gmail -> 連絡先 -> その他 -> エクスポート-> vCard 形式(Apple アドレスブックやその他のアプリケーションへのインポート用)
#
# Usage: bash addressbook-convert.sh [input_file(default:contacts.vcf)] [output_file(default:contacts-converted.vcf)]
#
set -ue
@sechiro
sechiro / list-metrics-to-get-metrics.sh
Created January 6, 2015 16:00
aws cloudwatch list-metricsの出力結果に対し、aws cloudwatch get-metric-statisticsを実行する
#!/bin/bash
if [ `uname` = "Darwin" ]; then
start_time=`date -u -v-30M "+%Y-%m-%dT%H:%M:%SZ"`
else
start_time=`date -u -d "30 minute ago" "+%Y-%m-%dT%H:%M:%SZ"`
fi
end_time=`date -u "+%Y-%m-%dT%H:%M:%SZ"`
period=300
statistics=Average
@sechiro
sechiro / home-brew-redis-install.log
Created January 13, 2015 15:22
Home brew redis install
sechiro$ brew install redis
==> Downloading https://downloads.sf.net/project/machomebrew/Bottles/redis-2.8.19.mavericks.bottle.tar.gz
######################################################################## 100.0%
==> Pouring redis-2.8.19.mavericks.bottle.tar.gz
==> Caveats
To have launchd start redis at login:
ln -sfv /usr/local/opt/redis/*.plist ~/Library/LaunchAgents
Then to load redis now:
launchctl load ~/Library/LaunchAgents/homebrew.mxcl.redis.plist
Or, if you don't want/need launchctl, you can just run:
@sechiro
sechiro / get-redis-lock.sh
Last active August 29, 2015 14:13
Redisのロックを取るスクリプト
#!/bin/bash
set -ue
node_id=1
lock_key=lock
ttl=10
redis_db=0
redis_host=localhost
redis_port=6379