创建 Dockerfile文件
vim Dockerfile
然后按键盘:wq
w:保存
q:退出
制作Image
username 是自己的DockerID
1、登录Docker ID
docker login
2、创建、拉去一个镜像作为基础镜像
docker build -t friendlyhello .
3、标记镜像
用于将本地镜像与镜像库中的镜像仓库相关联的表示法为 username/repository:tag
格式
docker tag image username/repository:tag
实例:
docker tag friendlyhello leovany/get-started:part1
4、发布镜像
将已标记的镜像上传到镜像仓库:
格式 :
docker push username/repository:tag
示例
docker push leovany/get-started:part1
5、从远程镜像仓库中拉取并运行镜像
若本地没有,则拉取远程镜像
docker run -p 4000:80 leovany/get-started:part1
问题
1、yaml: line 1: mapping values are not allowed in this context
解决方法:检查yaml文件,每个冒号后面,需要空格
2、 curl: (52) Empty reply from server
错误
按着 入门,第3部分:服务 操作,其中输入 curl http://localhost
提示 curl: (52) Empty reply from server
错误
方法一:
curl -4 http://localhost
-4 IPV4
方法二:
游览器输入 http://127.0.0.1/
3、Docker 安装后 报 Cannot connect to the Docker daemon at unix:///var/run/docker.sock. Is the docker daemon running?
systemctl enable docker # 开机自动启动docker
systemctl daemon-reload #
systemctl restart docker.service #重启docker
4、设置数据卷报错 -v
chown: changing ownership of ‘/var/lib/mysql/’: Permission denied
解决方法:
需要提权:增加 –privileged=true
docker run --name kbe_mysql_8.0_1 -p 4001:3306 -tid --privileged=true -v /mysql_8.0/data:/var/lib/mysql -v /mysql_8.0/logs:/var/log/mysql kbe_mysql_8.0:0.0.1
附录:命令行
docker build -t friendlyname .# 使用此目录的 Dockerfile 创建镜像
docker run -p 4000:80 friendlyname # 运行端口 4000 到 90 的“友好名称”映射
docker run -d -p 4000:80 friendlyname # 内容相同,但在分离模式下
docker ps # 查看所有正在运行的容器的列表
docker stop # 平稳地停止指定的容器
docker ps -a # 查看所有容器的列表,甚至包含未运行的容器
docker kill # 强制关闭指定的容器
docker rm # 从此机器中删除指定的容器
docker rm (docker ps -a -q) # 从此机器中删除所有容器
docker images -a # 显示此机器上的所有镜像
docker rmi # 从此机器中删除指定的镜像
docker rmi
(docker ps -a -q) # 从此机器中删除所有容器 docker images -a # 显示此机器上的所有镜像 docker rmi # 从此机器中删除指定的镜像 docker rmi
(docker images -q) # 从此机器中删除所有镜像
docker login # 使用您的 Docker 凭证登录此 CLI 会话
docker tag username/repository:tag # 标记 以上传到镜像库
docker push username/repository:tag # 将已标记的镜像上传到镜像库
docker run username/repository:tag # 运行镜像库中的镜像
1、删除全部容器
docker rm $(docker ps -a -q)