> 文章列表 > Docker常用项目实战演练

Docker常用项目实战演练

Docker常用项目实战演练

docker镜像源的修改

linux环境下编辑 /etc/docker/daemon.json

vi /etc/docker/daemon.json
#如添加如下网易镜像源
{
"registry-mirrors": ["http://hub-mirror.c.163.com"]
}

docker run命令详细解释

日常工作中用的比较多的是docker run命令,因为使用该命令可以轻松的搭建一个服务,以下是docker run命令详细解释

docker run [options] image [command] [args]
例如使用 docker run centos 此时如果本地没有该镜像,镜像使用docker pull xxx下载 ,再run

  • –name 指定容器名称
  • -d 后台运行容器,因为使用docker启动的往往是服务,也往往使用-d使用后台运行
  • -it 以交互模式运行
  • -p 指端口映射 hostport:containerport 8081:8080 访问的时候使用宿主机的端口便可以访问该服务
  • –rm 容器停止后,自动删除容器
  • -v 数据挂载 hostpath:containerpath 容器数据挂载的位置,如果不小心删除容器,容器的数据可能丢失,挂载到本地会更安全
  • -e 指定环境变量
  • –restart always自动启动重启

利用docker搭建jenkins、nginx、mysql、gitlab、可视化界面

搭建jenkins

docker run -d --name jenkins -p 8081:8080 --restart=always -u root -v ~/docker: /var/jenkins_home jenkins/jenkins

  • 先知道jenkins官网镜像存在哪?名称?jenkins/jenkins
  • -d 将jenkins作为后台服务运行
  • 思考如何将容器里面jenkins主目录的数据保存下来(jenkins容器下数据主目录 是哪个) /var/jenkins_home(dockerfile中获取) -v >~/docker:/var/jenkins_home
  • -p 8081:8080(ip:8081) 8081是宿主机映射出来可以供别人访问的端口

搭建nginx

docker run -d --name nginx_test -d -p 8089:80 -v ~/docker: /etc/nginx/nginx.conf nginx

搭建mysql

docker run -d --name mysql_test -p 3307:3306 -e MYSQL_ROOT_PASSWORD=123456 mysql
#进入MySQL
mysql -h 192.168.31.104 -u root -P 3307 -p

搭建gitlab

搭建gitlab的时候需要指定3个端口映射,2个数据挂载映射,因为常常是域名访问,指定域名

docker run -d --name gitlab-server -p 443:443 -p 80:80 -p 22:22 -v ~/docker:/etc/gitlab -v ~/docker:/var/opt/gitlab --hostname gitlab.XXX.com gitlab-ce

容器可视化管理

可视化界面可以可视化管理本地的容器,简单方便快捷,减少了使用命令行的不便利

docker run -d --name docker-web -p 9000:9000 --privileged -v /var/run/docker.sock:/var/run/docker.sock uifd/ui-for-docker
Docker常用项目实战演练