- 下载mongo 3.4版本
|
|
- 跑一个mongo容器。 —auth表示开启验证模式,mongo默认是不开启验证模式的
|
|
- 进入mongo1容器进行初始用户设置
|
|
- 建立超级用户.
|
|
有了这个超级用户之后就可以这个用户登陆,还可以再建其它user. 一般项目中用一个readWriteAnyDatabase就够了。
|
|
SubTitle
|
|
|
|
|
|
|
|
有了这个超级用户之后就可以这个用户登陆,还可以再建其它user. 一般项目中用一个readWriteAnyDatabase就够了。
|
|
使用Genymotion模拟器调试react-native时如果碰到error: could not install smartsocket listener: Address already in use错误,这个错误应该就是你的Genymotion使用的Android SDK 跟你本机上的Android SDK路径不一致。解决方法:
命令行输入 android,打开Android SDK Manager,找到你当前的SDK Path。eg: /usr/local/Cellar/android-sdk/24.4.1_1
设置你的Genmontion的Android SDK路径为1里找到的路径。
Genymontion->Settings->ADB->Use custom Android SDK tools
|
|
暂时找到了两种方法,这里备忘一下, 两个一起用确保
以volume的形式把主机的/etc/localtime共享到容器里,亲测可行。
|
|
在DockerFile里把time_zone echo到镜像里. 如果服务器只在国内的就按下面第一种直接写死好了
|
|
or
|
|
继上篇,最近发生的一件诡异的事,跑在一台测试服务器上的一个tomcat的docker容器隔几天都会ExitCode:137退出。最近几天一直很平稳没有一个容器退出过,直到今天早上10点左右这台机上所有在tomcat容器都一起停掉了(除了两个加了restart=always已经自启了)。分析:
分析ExitCode。 137 = 128+9. 表明这是被kill -9结果掉的。
http://tldp.org/LDP/abs/html/exitcodes.html
inspect这个容器查看具体信息。OOMKilled:false 表明它不是因为out of memory被kill的。难道是被其它什么进程kill的?
|
|
输出:
|
|
查看容器log。--没发现出错信息
|
|
查看docker deamon log。--没发现出错信息
|
|
不同系统版本有不同查看命令:
https://www.loggly.com/blog/what-does-the-docker-daemon-log-contain/
分析到现在为止貌似已经没辙了,如果还有其它方法请下面留言。
真相:
最后我只能想到一个可能性了:我公司有一个同事因个人原因在云南远程办公,有可能是被他手动kill掉的。 确认后果然是他干的(粗暴的把所有java进程都kill -9了:()
前几天配了一个tomcat容器用来跑UAT,但是这个容器有时候会死掉(原因下次再分析)从而影响了测试人员的测试工作。当初docker run这个容器的时候没有考滤到这个问题没有加—restart=always。google后发现一个可以运行中的容器加restart策略:
查看当前容器restart 策略
|
|
设置restart策略
|
|
react-native init richer
|
|
|
|
把邮件地址换成自己的邮件地址,然后一路回车,使用默认值即可,无需设置密码。
|
|
|
|
|
|
|
|
|
|
|
|
###然后重启SSH服务
禁用git用户shell登录
出于安全考虑,前面创建的git用户不允许登录shell,这可以通过编辑/etc/passwd文件完成。找到类似下面的一行:
|
|
改为:
|
|
客户端
服务器端
docker中文文档:
http://docker-doc.readthedocs.io/zh_CN/latest/index.html
docker英文文档:
https://docs.docker.com
一些博客:
http://www.alauda.cn/2015/07/17/dockerfileinstructions/
http://www.runoob.com/docker/docker-tutorial.html
http://www.open-open.com/lib/tag/Docker
http://www.cnblogs.com/jytx/p/5438747.html
http://beijgh.blog.51cto.com/8272564/1590783
aliyun:
http://oss.aliyuncs.com/aliyun_portal_storage/help/ecs/ECS%20Docker实践.pdf?spm=5176.7740559.0.0.DWttBA&file=ECS%20Docker实践.pdf
https://help.aliyun.com/knowledge_detail/40557.html
daocloud:
http://docs.daocloud.io/ci-image-build/dockerfile
unix Log:
https://www.cyberciti.biz/faq/linux-log-files-location-and-how-do-i-view-logs-files/
公司的一堆老服务器及一些阿里云服务器经常会报空间不足的警告,需要手动清理。
查看硬盘使用情况
|
|
查找文件夹使用容量
|
|
一般占据空间最大的都是一些log文件,如appach以及其它nohup log。对于已经在运行中的服务的log直接rm掉可能会导致服务出错,所以可以选用以下命令来清空。
|
|
mysql的binlog如果已经开启,可以用以reset master清除没有主从备份的数据库.
|
|
设置binlog的过期时间
|
|
今天接到一个需求,要在一个原生安卓APP的list renderer里加一个下拉菜单,并且不同的下拉项要根据内容显示不同颜色的字体。自从用过react native之后再接触安卓原生感觉一下子好不习惯,在RN里短短几行就能搞定的事在原生里得改好多代码。安卓里下拉菜单控件是Spinner。直接上代码:
关于Spinner的实现网上已经能找到很多,这里就列一下跟list renderer相关的。先list所在的xml相应位置添加Spinner的定义:
|
|
在list adapter类里:
|
|
在Spinner的Adapter时重写getDropDownView(),这样确保了下拉弹出框里样式改变
|
|
重写Spinner的OnItemSelectedListener的onItemSelected()方法,确定在未展开状态下默认选中值的样式:
|
|
消除spinner的下拉箭头.