Docker常用命令
常用镜像命令如下图
命令练习之安装nginx
首先去镜像仓库搜索nginx镜像,比如DockerHub;
-
输入命令
docker pull nginx
,安装最新版ngnix其他版本拉取命令见镜像仓库 -
docker images
,查看安装的镜像
-
doker save --help
查看命令使用说明 -
docker save -o nginx.tar nginx:latest
,将镜像保存到一个压缩包
-
docker rmi nginx:latest
删除镜像
-
docker load -i nginx.tar
加载压缩包为镜像
命令练习之安装redis
与安装nginx相同
- 输入命令
docker pull redis
,安装最新版redis 其他版本拉取命令见镜像仓库 docker images
,查看安装的镜像doker save --help
查看命令使用说明docker save -o redis.tar redis:latest
,将镜像保存到一个压缩包docker rmi redis:latest
删除镜像docker load -i redis.tar
加载压缩包为镜像
常用容器命令如下图
容器保护三个状态:
- 运行:进程正常运行
- 暂停:进程暂停,CPU不再运行,并不释放内存
- 停止:进程终止,回收进程占用的内存、CPU等资源
其中:
-
docker run:创建并运行一个容器,处于运行状态
-
docker pause:让一个运行的容器暂停
-
docker unpause:让一个容器从暂停状态恢复运行
-
docker stop:停止一个运行的容器
-
docker start:让一个停止的容器再次运行
-
docker rm:删除一个容器
创建并运行一个容器
命令为 docker run --name zl -p 80:80 -d nginx
命令解读:
- docker run :创建并运行一个容器
- –name : 给容器起一个名字,比如叫做mn
- -p :将宿主机端口与容器端口映射,冒号左侧是宿主机端口,右侧是容器端口
- -d:后台运行容器
- nginx:镜像名称,例如nginx
这里的-p
参数,是将容器端口映射到宿主机端口。
默认情况下,容器是隔离环境,我们直接访问宿主机的80端口,肯定访问不到容器中的nginx。
现在,将容器的80与宿主机的80关联起来,当我们访问宿主机的80端口时,就会被映射到容器的80,这样就能访问到nginx了
docker ps
查看容器
docker logs zl
查看容器日志
docker logs -f zl
持续跟踪日志Ctrl+c结束跟踪
浏览器进入该地址:
进入容器修改文件
1)进入容器。进入我们刚刚创建的nginx容器的命令为:
docker exec -it zl bash
docker ps
查看容器默认是启动的能查看
docker ps -a
查看所有容器
命令解读:
-
docker exec :进入容器内部,执行一个命令
-
-it : 给当前进入的容器创建一个标准输入、输出终端,允许我们与容器交互
-
mn :要进入的容器的名称
-
bash:进入容器后执行的命令,bash是一个linux终端交互命令
2)进入nginx的HTML所在目录 /usr/share/nginx/html
命令为cd /usr/share/nginx/html
ls
查看当前目录文件
3)修改index.html的内容
容器内没有vi命令,无法直接修改,我们用下面的命令来修改:
sed -i -e 's#Welcome to nginx#赵磊爱你哦#g' -e 's#<head>#<head><meta charset="utf-8">#g' index.html
4)停止和删除容器操作
docker stop zl
停止容器
docker start zl
启动容器
docker rm zl
删除容器(停止容器)-f
强制删除
创建一个redis容器,并支持数据持久化
docker run --name zlredis -p 6379:6379 -d redis redis-server --appendonly yes
客户端进入redis
docker exec -it zlredis bash
redis-cli
客户端查看数据存在: