• 2020系统综合实验 第2次实践作业


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

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

    一、pull nginx

    sudo docker pull nginx

    二、修改 default.conf文件

    原先的文件,listen 端口为80 root 地址为默认的

    修改后

    三、编写Dockerfile文件

    在同一个目录文件下,编写Dockerfile文件(D要大写)

    FROM nginx

    MAINTAINER sayoko

    COPY default.conf /etc/nginx/conf.d/

    COPY index.html /home/nginx-web/

    WORKDIR /home/nginx-web/

    EXPOSE 5000

    四、随便准备一个index.html文件

    准备就绪

    五、构建镜像

    sudo docker build -t sxnnginx .

    构建成功

    六、运行实验一下

    docker run --name myfirstng -d -p 5010:5000 sxnnginx

    浏览器进入映射的5010端口,查看到文件。

    七、踩过的坑

    一开始其实我不是这么做的,就差了一点点,可能是目录没写对的问题,或者是没有index.html文件的问题(这个可能性很小),总之我遇到了如图

    居然居然有2.604GB?你是什么妖怪!但是它总而言之还是成功了对吧,然后我就开始随手实验了一下

    也很顺利的进来了,但是它很有毒,我在容器下输exit也退不出去,百度了一下什么ctrl+P+Q,也根本没用,它就卡死在这里了,在docker ps里看,也是好好运行的,点开网页,却是连接失败,然后我又尝试改了一下构建的命令(还是改了Dockerfile我也忘了),然后还是不行。

    我又去百度了一下出现这个的原因,发现应该是Dockerfile的问题,工作目录以及index文件,然后删掉又重新写了一编,就成功啦!

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

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

    一、pull mysql 5.7

    上一个nginx的做的比较久(人比较蠢),中间看见群里的大佬们踩坑mysql的版本问题,虽然不知道为什么会这样但还是装5.7的吧!

    sudo docker pull mysql:5.7

    二、准备Dockerfile、privileges.sql、setup.sh、schema.sql

    说实话我一开始根本不知道怎么做,不知道那些是用来干什么的,然后学习大佬后,大概看懂一点了。

    MYSQL_ALLOW_ENPTY_PASSWORD 要修改成no

    将三个文件复制进来

    运行setup.sh。

    三、构建镜像

    sudo docker build -t mysqlfirst .

    四、实验一下

    sudo docker run --name mysql1 -p 3306:3306 -d mysqlfirst

    实验成功,出现了学号姓名。

    五、小结

    周六开始研究Dockerfile,一开始我甚至以为他是个命令(。),然后看了很多博客,菜鸟教程以及b站的视频,了解了它的编写规则之类的,在实验的过程中,暴露了我很多问题,比如对linux 不熟悉,比如vi编辑,进入编辑页面后傻傻操作了很久都不会用,然后通过百度逐渐上手了一点,虽然最后还是选择在外面直接输。。还有就是在家网不怎么好,很心酸QAQ。还顺便稍微看了一下脚本文件的一些基础东西,大概就这样了。

  • 相关阅读:
    IOS Block-Block块的使用与理解
    IOS 多线程03-GCD
    IOS 多线程01-线程基础知识
    JavaScript高级-定义函数(类)方法
    互联网技术笔试总通不过?leetcode刷对了么
    Redis 内存满了怎么办? Redis的内存淘汰策略
    SpringBoot项目优化和Jvm调优
    中台的末路
    Java 应用中的日志
    Spring Boot 支持https
  • 原文地址:https://www.cnblogs.com/sayoko/p/12762379.html
Copyright © 2020-2023  润新知