• 博客园logo
  • 会员
  • 周边
  • 新闻
  • 博问
  • 闪存
  • 赞助商
  • Chat2DB
    • 搜索
      所有博客
    • 搜索
      当前博客
  • 写随笔 我的博客 短消息 简洁模式
    用户头像
    我的博客 我的园子 账号设置 会员中心 简洁模式 ... 退出登录
    注册 登录
SilentSamsara
博客园    首页    新随笔    联系   管理    订阅  订阅

第2次实践作业

第2次实践作业

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

1、从Docker仓库拉取nginx作为基础镜像

sudo dokcer pull nginx

查看镜像:

sudo docker images

2、创建一个容器并运行

sudo docker run -id nginx /bin/bash

3、更改nginx的web存放目录
  • 复制对应nginx容器的配置文件,后续修改监听端口备用

    sudo docker cp <容器ID>:/etc/nginx/conf.d/default.conf .

    注:图中的3a为容器ID前两位(可以唯一标识)

    此时可在主机根目录下发现default.conf文件

  • 打开default.conf并修改

    sudo gedit default.conf

    listen为监听端口值,修改为4080;

    root为Web默认目录,修改为/usr/SilentSamsara

  • dockerfile:

  • 将Dockerfile、default.conf和网页文件放在相同目录下,执行指令:

    sudo docker build -t mynginx .

4、创建容器并验证结果

sudo docker run --name my_nginx -p 8866:4080 -d mynginx

浏览器中输入 :

localhost:8866/

(这个Web是在Web程序设计课程写的)

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

1、拉取一个mysql:5.7镜像

sudo docker pull mysql:5.7

2、准备工作:

Dockerfile:

setup.sh:

schema.sql:

​ 建立测试用数据库

privileges.sql:

​ 添加用户并授予权限

3、构建镜像并启动容器:

sudo docker build -t my_mysql .

sudo docker run --name msql -p 3306:3306 -d my_mysql

4、进入容器,登录,查询验证

docker exec -it 03 /bin/bash

mysql -u SilentSamsara_t -p

SilentSamsara_t为脚本添加的用户,需要输入创建用户时设定的密码(此处为admin)。

进入数据库(docker_mysql)查询

use docker_mysql

select * from user;

Dockerfile文本

1、自定义的web服务容器
FROM nginx
COPY default.conf /etc/nginx/conf.d/
COPY SilentSamsara /usr/SilentSamsara
maintainer SilentSamsara
EXPOSE 8866
2、自定义的数据库服务容器
FROM mysql:5.7
MAINTAINER SilentSamsara
ENV MYSQL_ALLOW_EMPTY_PASSWORD no
ENV MYSQL_ROOT_PASSWORD = admin
COPY setup.sh /mysql/setup.sh
COPY schema.sql /mysql/schema.sql
COPY privileges.sql /mysql/privileges.sql
CMD ["sh","/mysql/setup.sh"]
posted @ 2020-04-24 12:50  SilentSamsara  阅读(141)  评论(0)    收藏  举报
刷新页面返回顶部
博客园  ©  2004-2025
浙公网安备 33010602011771号 浙ICP备2021040463号-3