下面是对“聊聊Docker中容器的创建与启停问题”的完整攻略的详解:
容器创建
在Docker中创建容器需要借助Docker镜像,而关于Docker镜像的制作,可以参考Dockerfile来构建自己所需的镜像。
Docker镜像制作完成后,可以借助如下命令来创建容器:
docker run -it --name <容器名称> <镜像名称>
命令中需要自定义容器名称、镜像名称。具体参数的解释如下:
-it
:交互式方式启动容器;--name
:指定容器名称;镜像名称
:执行的Docker镜像。
例如,要使用Redis镜像来创建一个名为myredis的容器,可以使用以下命令:
docker run -it --name myredis redis
在此过程中,Docker会在当前终端以交互式方式启动容器,并且容器所使用的Redis镜像有默认的启动命令,会自动启动Redis服务。
容器启停
在容器创建成功后,需要掌握容器的启停操作。下面介绍一些实用的命令:
启动容器
可以使用如下命令来启动容器:
docker start <容器名称/ID>
其中,<容器名称/ID>为要启动的容器的名称或ID。
例如,要启动名为myredis的容器可以使用如下命令:
docker start myredis
停止容器
停止容器可以使用如下命令:
docker stop <容器名称/ID>
其中,<容器名称/ID>为要停止的容器的名称或ID。
例如,要停止名为myredis的容器可以使用如下命令:
docker stop myredis
重启容器
在停止容器后,可以使用如下命令来重新启动该容器:
docker restart <容器名称/ID>
例如,要重新启动名为myredis的容器可以使用如下命令:
docker restart myredis
删除容器
当不再需要某个容器时,可以借助如下命令来删除容器:
docker rm <容器名称/ID>
其中,<容器名称/ID>为要删除的容器的名称或ID。
例如,要删除名为myredis的容器可以使用如下命令:
docker rm myredis
示例说明:
示例一
如何通过Docker创建一个自定义的容器?
以下为示例步骤:
- 编写Dockerfile:
FROM ubuntu
RUN apt-get update && apt-get install -y apache2 && apt-get clean
CMD ["/usr/sbin/apache2ctl", "-D", "FOREGROUND"]
其中,Dockerfile指定基础镜像为Ubuntu,并安装Apache。
- 使用Dockerfile构建镜像:
docker build -t myapache .
其中,myapache是自定义镜像名称。
- 创建容器并启动:
docker run -it --name mycontainer -p 80:80 myapache
其中,mycontainer是自定义容器名称,-p 80:80是指将容器的80端口映射到主机的80端口。
- 测试:
在浏览器中输入localhost即可访问已经运行的容器。
示例二
如何通过Docker创建一个MariaDB容器?
以下为示例步骤:
- 获取MariaDB镜像:
docker pull mariadb
- 创建MariaDB容器并启动:
docker run --name mymariadb -p 3306:3306 -e MYSQL_ROOT_PASSWORD=my-secret-pw -d mariadb
其中,mymariadb是自定义容器名称,-p 3306:3306是指将容器的3306端口映射到主机的3306端口,-e MYSQL_ROOT_PASSWORD=my-secret-pw为设置容器的根密码。
- 测试:
使用以下命令在本地主机上连接到该MariaDB容器:
mysql -h 127.0.0.1 -P 3306 -u root -p
并输入设置的密码,如果可以连接成功则说明容器已经启动成功了。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:聊聊Docker中容器的创建与启停问题 - Python技术站