赞
踩
目录
本文参考自黑马程序员(感谢黑马大哥),旨在分享技术和方便查询使用,如果想安装Linux版本的Docker可参考官方文档如下:
- yum remove docker \
- docker-client \
- docker-client-latest \
- docker-common \
- docker-latest \
- docker-latest-logrotate \
- docker-logrotate \
- docker-engine
yum install -y yum-utils
yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
yum install -y docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
- # 启动Docker
- systemctl start docker
-
- # 停止Docker
- systemctl stop docker
-
- # 重启
- systemctl restart docker
-
- # 设置开机自启
- systemctl enable docker
-
- # 执行docker ps命令,如果不报错,说明安装启动成功
- docker ps
阿里云官网地址如下:
登录后:
指令的大体格式如下:
- # 创建目录
- mkdir -p /etc/docker
-
- # 复制内容,注意把其中的镜像加速地址改成你自己的
- tee /etc/docker/daemon.json <<-'EOF'
- {
- "registry-mirrors": ["https://xxxx.mirror.aliyuncs.com"]
- }
- EOF
-
- # 重新加载配置
- systemctl daemon-reload
-
- # 重启Docker
- systemctl restart docker
- docker run -d \
- --name mysql \
- -p 3306:3306 \
- -e TZ=Asia/Shanghai \
- -e MYSQL_ROOT_PASSWORD=123 \
- mysql
指令解读(来自黑马程序员):
docker run -d
:创建并运行一个容器,-d
则是让容器以后台进程运行
--name mysql
: 给容器起个名字叫mysql
,你可以叫别的
-p 3306:3306
: 设置端口映射。
容器是隔离环境,外界不可访问。但是可以将宿主机端口映射容器内到端口,当访问宿主机指定端口时,就是在访问容器内的端口了。
容器内端口往往是由容器内的进程决定,例如MySQL进程默认端口是3306,因此容器内端口一定是3306;而宿主机端口则可以任意指定,一般与容器内保持一致。
格式:
-p 宿主机端口:容器内端口
,示例中就是将宿主机的3306映射到容器内的3306端口
-e TZ=Asia/Shanghai
: 配置容器内进程运行时的一些参数
格式:
-e KEY=VALUE
,KEY和VALUE都由容器内进程决定案例中,
TZ=Asia/Shanghai
是设置时区;MYSQL_ROOT_PASSWORD=123
是设置MySQL默认密码
mysql
: 设置镜像名称,Docker会根据这个名字搜索并下载镜像
格式:
REPOSITORY:TAG
,例如mysql:8.0
,其中REPOSITORY
可以理解为镜像名,TAG
是版本号在未指定
TAG
的情况下,默认是最新版本,也就是mysql:latest
相关概念的介绍(来自黑马程序员):
当我们利用Docker安装应用时,Docker会自动搜索并下载应用镜像(image)。镜像不仅包含应用本身,还包含应用运行所需要的环境、配置、系统函数库。Docker会在运行镜像时创建一个隔离环境,称为容器(container)。
先启动MySQL:
sudo docker start mysql
再设置自启动:
sudo docker update mysql --restart=always
使用如下指令,如果不能使用请往后看,有解决:
ifconfig
结果如下:
如果不能执行则使用该命令下载该命令,再执行上述命令:
sudo yum install net-tools -y
如果还需要部署其它应用,可参考DockerHub官网,如下:
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。