docker学习笔记
*Docker测试题*
*题目一:安装Docker*
*任务描述:*
在CentOS系统上安装Docker,并确保其正常运行。
*要求:*
\1. 安装Docker社区版(Docker CE)。
yum install docker-ce -y
\2. 启动Docker服务,并设置开机自启。
systemctl start docker
systemctl enable docker
\3. 验证Docker是否安装成功,运行一个简单的Hello World容器。
*题目二:管理Docker镜像*
*任务描述:*
使用Docker命令管理镜像,包括拉取、列出、删除镜像。
*要求:*
\1. 从Docker Hub拉取nginx镜像。
docker pull nginx
\2. 列出本地所有镜像。
docker images -a
\3. 删除一个不再需要的镜像(例如hello-world镜像)。
docker rmi 镜像的id
*题目三:运行和管理Docker容器*
*任务描述:*
使用Docker命令运行和管理容器,包括启动、停止、重启、删除容器。
*要求:*
\1. 运行一个nginx容器,并将其端口映射到宿主机的8080端口。
docker run -p 8080:8080 nginx
\2. 列出所有正在运行的容器。
docker ps -a
\3. 停止并删除刚才运行的nginx容器。
docker ps -a
*题目四:使用Docker Compose*
*任务描述:*
使用Docker Compose创建一个包含Web应用和数据库的多容器应用。
*要求:*
\1. 安装Docker Compose。
yum install docker-compose
\2. 创建一个docker-compose.yml文件,定义一个Web应用(使用nginx镜像)和一个数据库(使用mysql镜像)。
mkdir test 建一个test目录
cd test
vi docker-compose.yml
写入以下内容:
写入nginx.conf配置文件
vi nginx.conf
建一个html目录并且在里面建立一个index.html 写入内容123456
mkdir html
cd html
vi index.html
123456
\3. 使用Docker Compose启动应用,并验证是否成功运行。
使用docker-compose up -d 启动应用并且在浏览器打开
可以看到成功运行
*题目五:配置Docker网络*
*任务描述:*
配置Docker网络,使多个容器能够相互通信。
*要求:*
\1. 创建一个自定义网络。
docker network create my-network
\2. 运行两个容器,一个Web应用(使用nginx镜像)和一个后端服务(使用redis镜像),并将它们连接到自定义网络。
docker pull redis #拉取redis镜像
运行 nginx镜像 并设置网络为自己定义的网络
dokcer run -d –name my-nginx –network my-network nginx
docker run -d –name my-redis –network my-network redis
# 进入容器里面
docker exec -it my-redis bash
docker exec -it my-nginx bash
进入容器执行 apt-get update
apt install iputils-ping
apt install net-tools
\3. 验证两个容器是否能够相互通信。
docker exec -it my-nginx ping my-redis
docker exec -it my-redis ping my-nginx
成功通信
参考文章
https://blog.csdn.net/Daguai_upgrade/article/details/141028003
*题目六:构建自定义Docker镜像*
*任务描述:*
使用Dockerfile构建一个自定义的Docker镜像,该镜像包含一个简单的Web应用。
*要求:*
\1. 创建一个简单的HTML文件index.html。
mkdir dockerfile
cd dockerfile
vi index.html 随便写点内容
\2. 创建一个Dockerfile,用于构建一个包含index.html的nginx镜像。
vi dockerfile
输入以下内容:
\3. 构建镜像并运行容器,验证Web应用是否正常运行。
docker run -d -p 8088:80 –name test-nginx-wangye nginx-test #启动服务
可以看到映射为8088端口成功访问到index.html文件