分享

不外传秘诀|docker 快速搭建常用的服务环境

 华云天池 2022-05-06 发布于北京
文章图片1

本文主要给大家介绍如何使用 docker 搭建常用的服务环境,

包括mysql,reedis,nginx,jenkins 等常用的环境,下面直接进入主题。

1、MySQL 部署

①搜索 MySQL 镜像

docker search mysql

②拉取 MySQL 镜像

docker pull mysql:5.7

③创建容器,设置端口映射,目录映射

●在宿主机中创建一个 MySQL 目录,用来存储数据库信息

mkdir ~/mysqlcd 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 的数据文件目录挂载到容器

④数据库操作

●进入容器操作数据库

# 进入容器docker exec -it c_mysql /bin/bash# 进入mysqlmysql -uroot -p123456# 创建一个远程连接账号 > use mysql > grant all privileges on * to 'test'@'%' identified by 'mysql';# 刷新权限 > flush privileges

●客户端远程连接数据库

# 数据库host为:宿主机的IP# 数据库端口为:3306# 数据库账号密码:自己上面设置的账号密码

2、nginx 部署

搜索镜像

docker search nginx

②拉取镜像

docker pull nginx

③创建容器,映射端口

●本地创建 nginx 数据存储文件

# 创建nginx目录mkdir /nginxcd /nginxmkdir confcd 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 部署

搜索镜像

docker search redis

②拉取镜像

docker pull redis

③运行容器

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 部署

下载 jenkins 镜像

docker pull jenkins/jenkins 

②启动容器,并映射出端口和挂在目录

docker run --name jenkins -d -v jenkins_home:/var/jenkins_home -p 8080:8080 -p 50000:50000 jenkins/jenkins:lts-jdk11

③进入容器获取 jenkins 的密码

# 进入容器docker exec -it jenkins /bin/bash# 容器内执行,获取jenkins初始密码cat /var/jenkins_home/secrets/initialAdminPassword 

访问 jenkins 服务 http://ip:8080,输入上面设置的密码,然后按页面提示流程进行初始化操作,设置账号密码,选择安装插件,即可进入到 jenkins 的主页面啦。

5、私有仓库的搭建

如果你想搭建一个自己的私有 Docker 仓库,也很简单,只需要几个步骤即可实现,

①搭建仓库

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 目录了。

②推送镜像到私有仓库

要通过 docker tag 将该镜像标志为要推送到私有仓库:

docker tag nginx:latest localhost:5000/nginx:latest

通过 docker push 命令将 nginx 镜像 push 到私有仓库中:

docker push localhost:5000/nginx:latest

③拉取私有仓库的镜像

拉取私有仓库的镜像,使用如下命令:

docker pull localhost:5000/镜像名:版本号例如docker pull localhost:5000/nginx:latest

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多