本文講述一下如何docker話360開源的持久化的redis,即pikalinux
FROM centos:7 RUN yum -y update ADD pika-linux-x86_64-v2.2.6.tar.bz2 /opt RUN mv /opt/pika-linux-x86_64-v2.2.6 /opt/pika-v2.2.6 ENV PIKA /opt/pika-v2.2.6 ENV PATH ${PIKA}/bin:${PATH} WORKDIR ${PIKA}
因爲官方的Dockerfile沒有指定centos版本,直接用latest,致使build起來有些問題,不一樣版本的類庫有的倉庫裏頭沒有,相對費勁,另外直接make出來的版本目測又2+G,沒研究怎麼去瘦身,因而乾脆仍是用二進制的版本了git
docker run --name "PIKA" --rm -v /pika-data/db:/opt/pika-v2.2.6/db -p 9221:9221 pika:v2.2.6 pika -c /opt/pika-v2.2.6/conf/pika.conf
redis-cli -h localhost -p 9221 localhost:9221> info # Server pika_version:2.2.6 pika_git_sha:e646201f53c5584294bdb2dece7b073f0d0e69b2 pika_build_compile_date: Oct 11 2017 os:Linux 4.4.0-62-generic x86_64 arch_bits:64 process_id:1 tcp_port:9221 thread_num:1 sync_thread_num:6 uptime_in_seconds:145 uptime_in_days:1 config_file:conf/pika.conf # Data db_size:146428 db_size_human:0M compression:snappy used_memory:4128 used_memory_human:0M db_memtable_usage:4128 db_tablereader_usage:0 # Log log_size:71104 log_size_human:0M safety_purge:none expire_logs_days:7 expire_logs_nums:10 binlog_offset:0 0 # Clients connected_clients:1 # Stats total_connections_received:1 instantaneous_ops_per_sec:0 total_commands_processed:1 is_bgsaving:No, , 0 is_slots_reloading:No, , 0 is_scaning_keyspace:No is_compact:No compact_cron: compact_interval: # Replication(MASTER) role:master connected_slaves:0 # Keyspace # Time:1970-01-01 08:00:00 kv keys:0 hash keys:0 list keys:0 zset keys:0 set keys:0 localhost:9221> set key1 hello OK localhost:9221> get key1 "hello" localhost:9221> exit
pikagithub
codis與pika的docker化redis