欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

docker的基本操作

程序员文章站 2022-03-12 12:37:48
...
  • 安装mac的boot2docker工具:可以使用brew install boot2docker或者下载boot2docker的客户端安装程序,但前者需要自己安装virtualbox虚拟机,后者安装包内带virtual box
  • 运行简单的docker程序
docker run -it cowsay /bin/bash
  • 把容器转换成镜像:
docker commit cowsay test/cowsayimage
  • 运行本地打包的镜像
docker run test/cowsayimage bash
  • 利用dockerfile构建对象
#dockerfie 内容,任一目录新建Dockerfile文件即可
FROM debian:wheezy  #指定镜像

RUN apt-get update && apt-get install -y cowsay fortune  #镜像运行的命令

ENTRYPOINT ["/usr/games/cowsay"]  #指定一个可执行文件,可以是脚本

#创建镜像命令
docker build -t jiamosi/cowsay-dockfile .
  • 发布镜像
docker push jiamosi/cowsaycowsay-dockfile  # 镜像的名称前面一定是dockerhub用户名
  • 删除容器
docker rm containerid
  • 删除已经退出的容器
docker rm -v $(docker ps -aq -f status=exited)
  • docker使用link连接两个容器
docker run --rm -it --link myredis:redis redis /bin/bash #将我的redis与最新的redis连接起来,并且启动新的redis,使用redis-cli看看
redis-cli -h redis -p 6379 # redis是myredis在新redis容器中的/etc/hosts映射myredis的ip地址的主机名称
  • 容器与世界互联
#暴露一个端口
docker run -d -p 8000:80 nginx  # 将主机的8000端口转发给容器的80端口
或者
docker run -d -p nginx # 自动选择一个主机上未使用的端口
docker port $(docker run -d -p nginx) 80  #可以查看容器的80端口对应的主机端口
  • 下载一个mysql的镜像,并运行起来。
docker run --name mysqlroot -e MYSQL_ROOT_PASSWORD=cloud -d mysql:latest
docker exec -it mysqlroot bash
mysql -u root -pcloud