本文主要给大家介绍如何使用docker搭建常用的服务环境,包括mysql,reedis,nginx,jenkins等常用的环境,下面直接进入主题。
1、mysql部署
1、搜索mysql镜像
docker search mysql
2、拉取mysql镜像
docker pull mysql:5.7
3、创建容器,设置端口映射,目录映射
- 在宿主机中创建一个mysql目录,用来存储数据库信息
mkdir ~/mysql cd mysql:5.7
- 启动容器
docker run -id \ -p 3306:3306 \ --name db \ -v /mysql/conf:/etc/mysql/conf.d \ -v /mysql/logs:/logs \ -v /mysql/data:/var/lib/mysql \ -e MYSQL_ROOT_PASSWORD=123456 \ mysql:5.7
- 说明:
-p 3307:3306
:宿主机的3307端口映射到容器的3306端口--name c_mysql
: 指定容器名称-v /mysql/conf:/etc/mysql/conf.d
: 挂载mysql配置文件的路径到容器-v /mysql/logs:/logs
:将mysql日志文件的路径挂载到容器-v /mysql/data:/var/lib/mysql
:将主机mysql的数据文件目录挂载到容器4、数据库操作
- 进入容器操作数据库
# 进入容器 docker exec -it c_mysql /bin/bash # 进入mysql mysql -uroot -p123456 # 创建一个远程连接账号 > use mysql > grant all privileges on * to 'test'@'%' identified by 'mysql'; # 刷新权限 > flush privileges
客户端远程连接数据库
# 数据库host为:宿主机的IP # 数据库端口为:3306 # 数据库账号密码:自己上面设置的账号密码
2、nginx部署
1、搜索镜像
docker search nginx
2、拉取镜像
docker pull nginx
3、创建容器,映射端口
- 本地创建nginx数据存储文件
# 创建nginx目录 mkdir /nginx cd /nginx mkdir conf cd conf # 编辑nginx配置文件 vi nginx.conf
- nginx配置文件内容
user www-data; worker_processes auto; pid /run/nginx.pid; include /etc/nginx/modules-enabled/*.conf; events { worker_connections 768; } http { sendfile on; tcp_nopush on; tcp_nodelay on; keepalive_timeout 65; types_hash_max_size 2048; include /etc/nginx/mime.types; default_type application/octet-stream; ssl_protocols TLSv1 TLSv1.1 TLSv1.2; # Dropping SSLv3, ref: POODLE ssl_prefer_server_ciphers on; access_log /var/log/nginx/access.log; error_log /var/log/nginx/error.log; gzip on; include /etc/nginx/conf.d/*.conf; include /etc/nginx/sites-enabled/*; }
- 运行容器
docker run -id \ --name nginx-test \ -p 8000:80 \ -v /nginx/conf/nginx.conf:/etc/nginx/nginx.conf \ -v /nginx/logs:/var/log/nginx \ nginx
验证是否安装成功
通过访问
http://ip:8000
,验证是否可以访问nginx服务。
3、redis部署
1、搜索镜像
docker search redis
2、拉取镜像
docker pull redis
3、运行容器
docker run -id --name redis-test -p 6379:6379 redis
设置密码
docker run -id --name redis-test -p 6379:6379 redis --requirepass 123456
到此为止redis就安装成功啦。
4、jenkins部署
1、下载jenkins镜像
docker pull jenkins/jenkins
2、启动容器,并映射出端口和挂在目录
docker run --name jenkins -d -v jenkins_home:/var/jenkins_home -p 8080:8080 -p 50000:50000 jenkins/jenkins:lts-jdk11
3、进入容器获取jenkins的密码
# 进入容器 docker exec -it jenkins /bin/bash # 容器内执行,获取jenkins初始密码 cat /var/jenkins_home/secrets/initialAdminPassword
4、访问jenkins服务
http://ip:8080
,输入上面设置的密码,然后按页面提示流程进行初始化操作,设置账号密码,选择安装插件,即可进入到jenkins的主页面啦。
5、私有仓库的搭建
如果你想搭建一个自己的私有Docker仓库,也很简单,只需要几个步骤即可实现,
1. 搭建仓库
Docker 官方提供了一个搭建私有仓库的镜像 registry ,只需把镜像下载下来,运行容器并暴露5000端口,就可以使用了。
docker pull registry:2
docker run -d -v /opt/registry:/var/lib/registry -p 5000:5000 --name myregistry registry:2
Registry服务默认会将上传的镜像保存在容器的/var/lib/registry,我们将主机的/opt/registry目录挂载到该目录,即可实现将镜像保存到主机的/opt/registry目录了。
2、推送镜像到私有仓库
要通过docker tag将该镜像标志为要推送到私有仓库:
docker tag nginx:latest localhost:5000/nginx:latest
通过 docker push 命令将 nginx 镜像 push到私有仓库中:
docker push localhost:5000/nginx:latest
3、拉取私有仓库的镜像
拉取私有仓库的镜像,使用如下命令:
docker pull localhost:5000/镜像名:版本号 例如 docker pull localhost:5000/nginx:latest
欢迎来到testingpai.com!
注册 关于