• 来自于同事的docker使用过程中的一些记录


    1. 从宿主机copy文件到容器

    docker cp jdk-8u45-linux-x64.tar.gz 68614964fc64:/work

    2. docker上安装ssh后 ssh进容器,有可能出现登录后即中断的情况,目前还没有弄清楚原因

    root@centos12 ~]# ssh 172.17.0.17
    root@172.17.0.17's password: 
    Welcome to Ubuntu 16.04.4 LTS (GNU/Linux 2.6.32-573.el6.x86_64 x86_64)
     * Documentation:  https://help.ubuntu.com
     * Management:     https://landscape.canonical.com
     * Support:        https://ubuntu.com/advantage
    Last login: Mon Jul 16 10:32:13 2018 from 172.17.42.1
    Connection to 172.17.0.17 closed.
    

    3. docker容器中的ulimit问题

    root@web:/home/hunter/test# python connectivity.py 
    post
    {"took":1}
    http://172.17.0.64:9200/_search?q=connectivity-test.conn_token:connectivity-test-yHoxx25Q
    Traceback (most recent call last):
      File "connectivity.py", line 80, in <module>
        r = requests.get(url, headers=headers)
      File "/usr/lib/python2.7/dist-packages/requests/api.py", line 55, in get
        return request('get', url, **kwargs)
      File "/usr/lib/python2.7/dist-packages/requests/api.py", line 44, in request
        return session.request(method=method, url=url, **kwargs)
      File "/usr/lib/python2.7/dist-packages/requests/sessions.py", line 455, in request
        resp = self.send(prep, **send_kwargs)
      File "/usr/lib/python2.7/dist-packages/requests/sessions.py", line 558, in send
        r = adapter.send(request, **kwargs)
      File "/usr/lib/python2.7/dist-packages/requests/adapters.py", line 378, in send
        raise ConnectionError(e)
    requests.exceptions.ConnectionError: HTTPConnectionPool(host='172.17.0.64', port=9200): Max retries exceeded with url: /_search?q=connectivity-test.conn_token:connectivity-test-yHoxx25Q (Caused by <class 'socket.error'>: [Errno 111] Connection refused)

    通过 docker run --ulimit nofile=65536:65536 --name es6 -d newssh3  创运行容器,解决。

    4. docker 容器中权限不足的问题(不能修改系统级的配置)

    # vim /etc/sysctl.conf 
    # sysctl -p
    sysctl: setting key "vm.max_map_count": Read-only file system

    编辑sysctl.conf后执行sysctl -p 报Read-only file system
    解决方法:# docker run --privileged -it bdb468c63e82 /bin/bash

    5. 

    root@his:/work# docker load < /work/mysqlimages.tar 

    6. 

    docker managed volume 方式 多容器共享主机数据,如果容器中有数据则复制到volume中,容器中没数据时将复制volume中的数据,如果两端都有数据则听主机的(自定义volume ,而非随机ID,官方推荐,移植性好)
    docker volume create volume-test
    docker run -it --rm --name test1 -v volume-test:/data  his1 /bin/bash
    docker run -it --rm --name test2 -v volume-test:/data  his1 /bin/bash

    7. docker程序的某些文件莫名其妙的丢失,只能重装

    docker exec 问题
    OCI runtime state failed: exec: "docker-runc": executable file not found in $PATH: : unknown
    /usr/bin/docker-runc 丢失
    重新安装docker 然后service docker restart 即可
     
    8. 杂

        1、所有应用的配置文件都要修改并检查

        2、基于docker部署es增加节点时需要把network.host替换成network.bind_host和network.publish_host

        3、增加es新节点的数据目录要清除

        4、所有机器的/etc/hosts 都要修改正确

        5、docker数据目录/var/lib/docker 挂载到最大分区上,避免空间不够

        6、fdisk 分区完重启,然后再mkfs.ext4 格式化,在/etc/fstab 配置开机自动挂载,然后在重启

        7、es 节点要执行sysctl -p ,加入/work/auto_start中可以run 时自动执行

        8、requirements.txt 中的包要指定版本及安装先后顺序

     

    117上的gocron,登录VPN后无法访问gocron的web界面

        原因路由和本地电脑IP有冲突,删除路由即可。

        route del -net 172.16.0.0 netmask 255.255.0.0

     
  • 相关阅读:
    【Tools】xshell添加命令按钮Button
    【Optimization】ARM的寻址方式(详细)
    【Python】python文件或文本加密(4种方法)
    【Optimization】常用SSE Intrinsic指令总结
    【Optimization】X86汇编快速入门
    【Base】如何理解Latency和Throughput: 吞吐量和延迟
    【Cmd】Windows下批处理常用命令总结
    【Optimization】SSE指令集学习:Compiler Intrinsic
    【ASM】汇编指令movdqa与movdqu的区别
    anaconda
  • 原文地址:https://www.cnblogs.com/yeyong/p/12518168.html
Copyright © 2020-2023  润新知