一,镜像命令
常见的镜像操作命令如图:
二,常用的镜像命令
docker images 查看镜像
docker rmi 删除镜像
docker push 推送镜像到服务器
docker pull 从服务器拉取镜像
docker save 保存镜像为压缩包
docker load 加载压缩包为镜像
利用docker pull命令拉取镜像
利用docker save命令将镜像保存为tar包
利用docker rmi 删除本地的镜像
利用docker load 重新加载镜像
docker run:创建并运行一个容器,处于运行状态
docker stop:停止一个运行的容器
docker start:让一个停止的容器再次运行
docker restart:重新启动容器
docker rm:删除一个容器
docker pause:让一个运行的容器暂停
docker unpause:让一个容器从暂停状态恢复运行
三,创建并运行容器
需求:创建并运行nginx
命令语法:
docker run --name containerName -p 80:80 -d nginx
语法解析:
docker run :创建并运行一个容器
--name : 给容器起的名字,例如叫做ng
-p :将宿主机端口与容器端口映射,冒号左侧是宿主机端口,右侧是容器端口
-d:后台运行容器 nginx
:镜像名称,例如nginx
查看运行的容器
docker ps
查看docker容器中的nginx访问日志
docker logs ng
持续查看docker容器中的nginx访问日志
docker logs -f ng
查看容器状态:
docker ps docker ps -a 查看所有容器,包括已经停止的
四,数据卷
数据卷操作的基本语法如下:
docker volume [COMMAND]
docker volume命令是数据卷操作,根据命令后跟随的command来确定下一步的操 作:
create 创建一个volume
inspect 显示一个或多个volume的信息
ls 列出所有的volume
prune 删除未使用的volume
rm 删除一个或多个指定的volume
1,创建和查看数据卷
docker volume create html(创建)
docker volume ls(查看所有)
docker volume inspect html(查看数据卷详细卷)
2.挂载数据卷
docker run --name ng -v html:/usr/share/nginx/html -p 8080:80 -d nginx
-v html:/usr/share/nginx/html :把html数据卷挂载到容器内 的/usr/share/nginx/html这个目录中
防火墙和阿里云的安全组要放行输入的端口
sudo ufw status 阿里云的安全组添加 3309 的端口
sudo ufw allow 3309 ubuntu 的防火墙要允许 3309 端口通信
docker exec -it mysql bash 从linux进入到docker中的容器的命令是
需求:创建并运行一个MySQL容器,将宿主机目录直接挂载到容器需求:创建并运行一个MySQL容器,将宿主机目录直接挂载到容器
步骤:
1. mysql.tar文件上传到服务器 (docker pull mysql)
2. 创建目录/usr/mysql/data
3. 创建目录/usr/mysql/conf
4. 将提供的hmy.cnf文件上传到/usr/mysql/conf
5. 挂载/usr/mysql/data到mysql容器内数据存储目录(docker --name mysql mysql:/usr/mysql/data -p 8090:80 -d)
6. 挂载/usr/mysql/conf/hmy.cnf到mysql容器的配置文件(docker --name mys mysql:/usr/mysql/conf/hmy.cn -p 8070:80 -d)
7. 设置MySQL密码(需要重置,alter user 'root'@'localhost' identified with mysql_native_password by'新密码')
登录sqlyog(阿里云地址,数据库名,密码)