第2次实践作业

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

1.拉取Nginx镜像

sudo docker pull nginx

2.查看安装情况

sudo docker images

3.运行nginx容器

sudo docker run --name nginx-test -p 8080:80 -d nginx

4.查看容器ID

sudo docker ps

5.新建一个文件夹docker

6.新建并编写index.html文件

vim index.html


7.查看配置信息

sudo docker exec -it bc8709898f74 /bin/bash
cd /etc/nginx/conf.d
cat default.conf

8.创建并编写default.conf文件,监听端口设为5678

vim default.conf



9.编写Dockerfile文件

vim Dockerfile
from nginx
maintainer laika
copy index.html /home/c/Desktop/dock/
copy default.conf /etc/nginx/conf.d/
expose 7890

10.直接在当前dock目录下构建镜像

sudo docker build -t laikanginx .

11.运行容器

sudo docker run --name laikanginx -p 8765:5678 -d laikanginx


12.验证成功

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

1.获取mysql镜像

sudo docker pull mysql:5.7

2.创建Dockerfile文件

FROM mysql:5.7
MAINTAINER laika
ENV MYSQL_ALLOW_EMPTY_PASSWORD no
ENV MYSQL_ROOT_PASSWORD=123
COPY setup.sh /home/c/Desktop/sql/setup.sh
COPY schema.sql /home/c/Desktop/sql/schema.sql
COPY privileges.sql /home/c/Desktop/sql/privileges.sql
CMD ["sh", "/home/c/Desktop/sql/setup.sh"]

3.创建setup.sh文件

vim setup.sh

4.创建schema.sql文件

vim schema.sql

4.创建privileges.sql文件

vim privileges.sql

5.构建镜像

sudo docker build -t laikamysql .

6.运行并进入容器

sudo docker run --name laikamysql -p 3000:3000 -d laikamysql
sudo docker exec -it laikamysql /bin/bash

7.登录数据库

mysql -u docker -p
use docker_mysql


8.查看car表

select * from car;

9.查看配置

show variables;

10.退出登录

11.查看容器配置和启动日志

sudo docker inspect 942760ecf9ac

sudo docker logs 942760ecf9ac

3.遇到的错误

  • 路径没写正确导致网页显示不出来,将路径改正;另外设置需要找到没用到的端口

  • 符号要打正确,不然容易出错,特别是点和空格容易被忽视
  • 执行mysql -u docker -p时报错,是文件没有写正确的原因,重新编写文件路径即可
原文地址:https://www.cnblogs.com/solareye/p/12771362.html