Docker设定固定IP

  1. 新建自定义网络。

    >> docker network create --subnet=172.16.0.0/16 testnet
    
  2. 创建虚拟机。

    >>  docker run --name t1 -i -t --net=testnet --ip=172.16.0.111 -p 8080:8080 -v ~/share/:/usr/development/ ubuntu:14.04 /bin/bash
    >>  docker run --name t2 -i -t --net=testnet --ip=172.16.0.112 -p 8081:8081 -v ~/share/:/usr/development/ ubuntu:14.04 /bin/bash
    
  3. 进入虚拟机,查看当前IP。

    >> docker exec -it t1 /bin/bash
    >> root@2ef31a06d8f8:/# ifconfig
    eth0      Link encap:Ethernet  HWaddr 02:42:ac:10:00:6f
            inet addr:172.16.0.111  Bcast:0.0.0.0  Mask:255.255.0.0
            inet6 addr: fe80::42:acff:fe10:6f/64 Scope:Link
            UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
            RX packets:22 errors:0 dropped:0 overruns:0 frame:0
            TX packets:13 errors:0 dropped:0 overruns:0 carrier:0
            collisions:0 txqueuelen:0
            RX bytes:1716 (1.7 KB)  TX bytes:1026 (1.0 KB)
    
    lo        Link encap:Local Loopback
            inet addr:127.0.0.1  Mask:255.0.0.0
            inet6 addr: ::1/128 Scope:Host
            UP LOOPBACK RUNNING  MTU:65536  Metric:1
            RX packets:0 errors:0 dropped:0 overruns:0 frame:0
            TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
            collisions:0 txqueuelen:1
            RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)
    >> docker exec -it t2 /bin/bash
    >> root@a9cd9a699b05:/# ifconfig
    eth0      Link encap:Ethernet  HWaddr 02:42:ac:10:00:70
            inet addr:172.16.0.112  Bcast:0.0.0.0  Mask:255.255.0.0
            inet6 addr: fe80::42:acff:fe10:70/64 Scope:Link
            UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
            RX packets:14 errors:0 dropped:0 overruns:0 frame:0
            TX packets:15 errors:0 dropped:0 overruns:0 carrier:0
            collisions:0 txqueuelen:0
            RX bytes:1068 (1.0 KB)  TX bytes:1166 (1.1 KB)
    
    lo        Link encap:Local Loopback
            inet addr:127.0.0.1  Mask:255.0.0.0
            inet6 addr: ::1/128 Scope:Host
            UP LOOPBACK RUNNING  MTU:65536  Metric:1
            RX packets:0 errors:0 dropped:0 overruns:0 frame:0
            TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
            collisions:0 txqueuelen:1
            RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)
    
  4. 重启之后,IP地址依然保持之前的设置,并且可以相互ping通。

Android Studio连接夜神模拟器进行测试

在之前的文章 https://codinglonglong.github.io/posts/android-studiolian-jie-droid4xdiao-shi-app/ 中,我们已经成功使用Droid4X进行APP开发测试,这次我们使用夜神模拟器完成同样的工作。

  1. 安装夜神模拟器。

  2. 添加夜神模拟器的可执行路径到系统路径,我的在

    C:\Program Files\nox\Nox\bin
    
  3. 启动夜神模拟器服务。

    >> nox_adb.exe connect 127.0.0.1:62001
    

    出现

    * daemon started successfully *
     connected to 127.0.0.1:62001
    
  4. 在Android Studio中启动调试即可。

回归平淡

一个月的业余时间,终于把标日初级上册复习完了……学了好几年的日语,还在标日初级上册打转……真是无语……这次争取花几年业余时间把N2考下来,学外语总得有个目标,否则很难进步,总是在基本对话上来回反复……

钢琴也刚刚学完小汤的前两册……少儿水平……不过终于从一只手上升为两只手了……

放了一个月的各种开发环境都不是最新的了,今天升级了一下各个开发工具,再次回到平淡的技术学习中……Linux、Python、JavaScript、数据分析、个性化推荐……“别跟我提精通,技术是个永远都填不满的大坑”……

龙龙看柯南(6)

句子分析

あんたの足は、三か月前にもう治ってんだよ!!

你的脚早在三个月之前就痊愈了!!

词语分析

  1. あんた:(あなた的转音,多对晚辈)你。
  2. 治す(なおす):[五段动词]医治。

句子分析

そうですよね?目暮警部...

对吧?目暮警官……

词语分析

  1. 目暮警部(めぐれけいぶ):目暮警官。

句子分析

観念しろ!!おまえの主治医が、すべて吐いたぞ...

死心吧!!你之前的主治医生早已全坦白了……

词语分析

  1. 観念(かんねん):[三类动词]断念,死心。
  2. 主治医(しゅじい):主治医师。
  3. 全て(すべて):全部。
  4. 吐く(はく):[五段动词]坦白。

语法分析

  1. ぞ结尾,表示叮嘱和提醒对方,和ぜ结尾一样,但语气比ぜ重。
  2. 动词た形表示过去发生的动作。

句子分析

さあ、さっさと歩け!!トホホ...

快走!!

词语分析

  1. さあ:表示劝诱或催促。
  2. さっさと:迅速地。
  3. 歩く(あるく):[五段动词]行走。
  4. トホホ:难为情、或是感到悲痛的时候所说的话。

句子分析

いやー、また君の力を借りてしまったな、工藤君!!

唉呀,又让你帮了忙,工藤新一!!

词语分析

  1. また:又。
  2. 君(きみ):(男性)你。
  3. 力(ちから):力量,能力。
  4. 借る(かる):[五段动词]借。
  5. 仕舞う(しまう):[五段动词]完成,结束。

语法分析

  1. てしまう表示动作完成、结束。

句子分析

いつもいつもすまんのー...

总是麻烦你……

词语分析

  1. いつも:总是。
  2. すまん:对不起,麻烦了。

句子分析

また難事件があれば、この名探偵工藤新一にご依頼を!!

如果还有难以解决的案件,就尽管委托我名侦探工藤新一好了!!

词语分析

  1. 難事件(なんじけん):困难的案件。
  2. ある:[五段动词]存在。
  3. 名探偵(めいたんてい):名侦探。
  4. 依頼(いらい):[三类动词]委托。

Windows配置Selenium测试环境

1、安装Selenium,参考: https://codinglonglong.github.io/posts/pipshi-yong-guo-nei-yuan/

2、下载浏览器驱动。

  1. IE浏览器: http://selenium-release.storage.googleapis.com/index.html?path=IE.Driver.Beta/
  2. Firefox浏览器: https://github.com/mozilla/geckodriver/releases
  3. Chrome浏览器: https://sites.google.com/a/chromium.org/chromedriver/downloads
  4. Edge浏览器: https://developer.microsoft.com/en-us/microsoft-edge/tools/webdriver/

3、把上一步中的驱动放到系统可执行目录,或者将该驱动的目录加入系统环境变量。

4、编写代码:

from selenium import webdriver

browser1 = webdriver.Firefox()
browser1.get("https://codinglonglong.github.io/")


browser2 = webdriver.Chrome()
browser2.get("https://codinglonglong.github.io/")


browser3 = webdriver.Edge()
browser3.get("https://codinglonglong.github.io/")


browser4 = webdriver.Ie()
browser4.get("https://codinglonglong.github.io/")

5、运行代码即可自动打开浏览器。

Selenium文档: https://seleniumhq.github.io/selenium/docs/api/py/api.html