• docker


    play-with-docker主机空间:

    http://labs.play-with-docker.com/  开源的可以用4小时的主机空间,可以试验docker。这里我还可以去配置sftp连接(配了ftp,就可以在这4小时内把网站文件拉到上面随便玩。用vi命令行不能愉快的折腾)。

    比如新创建一个主机,从页面上得到这些信息:

    网页的url路径是: http://host1.labs.play-with-docker.com/p/fd376d82-4962-4bc2-994f-297468343ebe#fd376d82_node1

    fd376d82_node1

    IP 10.0.48.3

    然后在FileZilla创建一个新的连接(下面的彩色字,信息来源于上面的彩色字):

    主机: host1.labs.play-with-docker.com
    端口: 1022
    协议: SFTP
    登陆类型: 密钥文件
    用户名: 10-0-48-3-fd376d82
    密钥文件: D:cdToolsputtypwd-keyputty_key.ppk

    (密钥文件哪里来呢?  刚才建立主机的页面,在根目录输入  vi .ssh/id_rsa  ,把里面的内容拷出来,保存到本机并命名为putty_key.ppk)

    以上sftp配置完毕。

    https://www.chiark.greenend.org.uk/~sgtatham/putty/latest.html  putty  是个ssh的客户端


    练习1:折腾 play-with-docker 主机,  配置php mysql mongo python 环境:

    1、访问 http://labs.play-with-docker.com/ ,要翻墙,添加一个主机,网页的命令行界面。

    2、下载  代码压缩包 wget http://........./docker/docker-pwd.tar.gz

    3、解包并进入解包后的目录

    tar -xzf docker-pwd.tar.gz
    cd docker-pwd
    ls -lh

    4、编辑 docker-compose.yml

    5、docker服务

    docker-compose up -d  创建、运行服务
    docker-compose down  删除服务
    docker-compose ps       查看服务
    docker-compose images  查看镜像
    docker-compose exec python sh  进入 python 服务容器。输入 exit,退出服务容器
    docker-compose exec php sh       进入 php 服务容器。输入 exit,退出服务容器
    docker-compose exec mysql sh    进入mysql 服务容器。输入 exit,退出服务容器

    代码压缩包解压后的 docker-pwd 目录下的 wwwroot文件夹 为默认创建的nginx、php、python三个服务共享的根目录,当然也是网页的默认根目录,因此可以通过sftp的方式(使用FileZilla软件)直接上传和在线编辑代码

    练习2:创建集群:  play-with-docker 上,创建集群。    进入站点,点“扳手”图标

    先上传文件 nginx-stack.yml

    version: '3'
    services:
    # nginx容器
      nginx:
        image: nginx
        deploy:
          mode: global
          restart_policy:
            condition: on-failure
        networks:
          - nginx
        environment:
          TERM: xterm
          LANG: C.UTF-8      
        ports:
          - 8080:80
        
    # 设置自定义网络
    networks:
      nginx:
        driver: overlay

    运行命令:  docker stack deploy -c nginx-stack.yml abcdef

    查看集群:  docker service ls

    查看某个集群:docker service ps abcdef_nginx



    链接:

    http://www.docker.org.cn/  docker中文社区

    http://www.docker.org.cn/page/resources.html  docker相关网站链接

    http://www.docker.org.cn/book/docker/what-is-docker-16.html  入门教程

    http://www.cnblogs.com/zhaof/p/6135971.html  容器的管理操作  2017-12-6

    https://www.cnblogs.com/qcloud1001/p/9273549.html  十分钟明白什么是容器技术  2019-6-26


    正文:

    类比式的初步理解概念:

    镜像相当于是个安装光盘的软件

    容器是装了系统的正在运行的windows系统,是个运行的实例。

    主机是安装了这个环境的电脑

    volume(谐音:蜗牛)  卷  (把它看作文件夹,由docker来管理的一种虚拟的绑定的文件夹。)

    几个系统:

    ubuntu centos debian

    centOS和ubuntu是国内常用的。  centOS是面向社区的是个产品,红帽是面向公司的。  ubuntu 是在debian基础上修改的。


    例子:比如怎么去找一个镜像:

    在咕咕里搜索: docker nginx,找到 hub.docker.com 这个网址下的链接镜像。(咕咕里搜索:  site:hub.docker.com docker nginx)

    最好是选用 library/nginxlibrany 是官方来源的。

    或者是直接到 hub.docker.com 去搜索。

    例子:比如装nginx:

    https://hub.docker.com/r/richarvey/nginx-php-fpm/  点右下角:Source Repository,能进入github的链接:https://github.com/richarvey/nginx-php-fpm

    docker run -d --name=test -p 8080:80 richarvey/nginx-php-fpm:latest  (例子,这个是安装nginx的最新版本)

    docker run -d -v /code:/ --name=test -p 8080:80 richarvey/nginx-php-fpm:latest  (例子,比如装到本地code目录中)

    进入docker-compose.yml (详情请看这个文件的配置内容)这个文件所在的目录,运行:

    docker-compose -d up


    命令:

    docker version  查看docker版本

    docker search nginx(nginx是镜像名字)  搜索可用docker镜像

    docker pull richarvey/nginx-php-fpm  下载容器镜像

    docker run richarvey/nginx-php-fpm echo "hello word"  在docker容器中运行hello world  (docker run命令有两个参数,一个是镜像名,一个是要在镜像中运行的命令。)

    //练习笔记2019-8-3
    docker pull bjhhh/php-python-sshd
    //https://hub.docker.com/r/bjhhh/php-python-sshd

    2017-11-26补充:

    http://blog.csdn.net/tina_ttl/article/details/51326011  关联 github和dockerhub的账户 (重要)

    https://github.com

    https://hub.docker.com

  • 相关阅读:
    在Android Studio中用Gradle添加Robolectric
    Windows环境下利用github快速配置git环境
    上传Android代码到Jcenter(解决了字符映射的问题)
    RecyclerView和ScrollView嵌套使用
    Android Java类编写规范+优化建议
    3.0之后在LinearLayout里增加分割线
    【转】Android Studio中通过快捷键来提取提取方法
    为什么Android应该根据屏幕分辨率来加载不同的图片文件
    JSON/XML格式化插件比较
    利用在线工具根据JSon数据自动生成对应的Java实体类
  • 原文地址:https://www.cnblogs.com/qq21270/p/7684683.html
Copyright © 2020-2023  润新知