zoukankan      html  css  js  c++  java
  • 第2次实践作业

    (1) 实现一个自定义的web容器服务

    推荐apache或nginx,要求标明镜像作者信息,安装必要的工具以方便维护;设定你自己的web存放目录,安全起见,请将默认的监听端口80更改为你自定义的端口,并且声明暴露的端口,容器启动时,能直接进入web代码的存放目录。

    参考:参考1,参考2,参考3,参考4

    1、拉取镜像

    搜索镜像

    docker seaech nginx
    


    确认镜像已安装

    docker images nginx
    


    拉取镜像

    docker pull nginx
    

    2、挂载

    创建待挂载的目录

    sudo mkdir -p /data/nginx/{conf,conf.d,html,logs}
    

    创建配置文件
    启动临时的nginx

    docker run -d --name nginx nginx
    

    拷贝配置文件

    sudo docker cp nginx:/etc/nginx/conf.d/default.conf conf.d/
    

    删除临时的nginx

    docker stop nginx
    docker rm nginx
    

    启动nginx

    docker run --name nginx -d -p 80:80 -v /data/nginx/html:/usr/share/nginx/html -v /data/nginx/logs:/var/log/nginx -v /data/nginx/conf.d:/etc/nginx/conf.d  nginx
    

    这里是第一次错误……没注意没有目录,以为会自动创建,就跳过不管了(造成后面好几次创建镜像出错),正确应该是自己创建好

    3、配置Dckerfile并创建镜像

    创建目录后,把nginx容器的默认配置default.conf(上一步操作失误的情况下,这步变成了conf.d然后失败)复制进文件夹中,一共三个文件
    第二个错误,因为第一个错误,根据报错查了好久,没考虑到之前没挂载到文件,以为是文件路径不对。一开始更改了文件路径。(忘记截图了,下面是正确的)

    1.创建Dckerfile

    2.创建index.html

    3.复制default.conf(修改监听和目录)

    这是创建镜像和容器都成功,但是因为第二个错误所以显示不出来。搜索了好久,因为没有太多参考,只参考了:参考,但是没有用()

    错误如下:

    这是在发现第二个错误后更改文件路径后的运行结果。

    最后的正确显示:

    (2) 实现一个自定义的数据库容器服务

    可选择Mysql,Mariadb等,要求标明镜像作者信息,为了方便维护,需要能够查看容器内的配置信息,包括但不限于网络、应用配置文件等。在环境变量中设置好数据库的root密码且不允许空密码登录,创建一个测试数据库,指定用户名和密码。

    参考:参考
    搭建步骤

    1、首先创建Dckerfile:

    2、编写容器启动脚本setup.sh:

    3、需要导入数据的mysql脚本命令schema.sql:

    4、mysql权限设置命令privileges.sql:

    5、创建镜像

    docker build -t 名字 .
    


    执行docker images查看该镜像是否存在于镜像列表中:

    创建成功。

    6、启动容器

    docker run -d -p 13306:3306 名字
    

    启动容器,并将端口映射到本地的13306端口,命令行如图所示:

    容器启动成功。

    验证结果

    1、通过进入容器在命令行验证


    执行exec命令进入容器:

    docker exec -it id /bin/bash
    

    前文中创建了docker_mysql数据库,并在此数据库中创建了user表,同时将数据库的连接授权赋予了新建的docker用户,因此验证过程为:
    使用docker用户登录数据库:

    mysql -u docker -p
    


    输入密码123456通过登录验证
    切换至docker_mysql数据库:

    use docker_mysql;
    


    查看数据库中的表:

    show tables;
    


    查看表中的数据:

    select * from user;
    

  • 相关阅读:
    SharePoint Framework (SPFx) 开发入门教程
    SharePoint 2013 Designer 入门教程
    SharePoint 2013 开发教程
    SharePoint 2013 入门教程
    SharePoint Online 部署SPFx Web部件
    SharePoint Online SPFx Web部件绑定数据
    SharePoint Online 创建SPFx客户端Web部件
    SharePoint Online 配置框架(SPFx)开发环境
    SharePoint Online 创建应用程序目录
    SharePoint Online 启用 IRM
  • 原文地址:https://www.cnblogs.com/wawu/p/12769951.html
Copyright © 2011-2022 走看看