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