也不是所有的公司都崇尚Linux
哲学,也有非常多的公司热衷于使用Windows
当作服务器。所以这里介绍一下在如何在Windows
下使用Docker
搭建GitLab
。
Docker
在这里给出Docker
安装包——提取码:ary4
在Windows
下安装Docker
就非常难受了,需要解决非常多的约束。
有些人非常讨厌更新所以使用一些脚本把更新关掉了。但是Docker
必须要更新到特定版本才能安装,你气不气嘛。
如果你是Windows10
,在“更新和安全” → \rightarrow →“Windows
更新”,在里面找到“检查更新”按钮,点击即可。
到最后,会提示你重启以应用更新。当然,你可以选择现在重启,但是推荐把下面的步骤做完之后再更新。
Linux
的Windows
子系统”在编辑这篇博客的时候,Docker
已经出到了2.5.0,需要这样的设置。
打开“控制面板” → \rightarrow →“程序” → \rightarrow →“程序和功能” → \rightarrow →“启用或关闭Windows
功能” → \rightarrow →“适用于Linux
的Windows
子系统”(最下方倒数第三个),勾选,然后点击“确定”。
接着Windows
就能够帮你下载你所添加的一系列东西。等待完成之后,系统会提示需要重启,重启之后就应用了更改。那就这个时候重启吧,但是别忘了,在开机之前还有一点点事情要做。
VT
你的Windows
需要开启virtual technology
,也就是虚拟化,打游戏的时候经常要开启的那个。有些主板可能比较难找,但一定会有,实在找不到去问问度娘吧,主办版本太多了也没办法一一说明。
试着打开Docker Desktop
的安装包吧!
看到这里是不是以为马上就要结束了?当然没有。只不过往后的步骤有提示而已,别担心啦。
打开安装包之后,他会提示:需要安装Linux
内核以支持Docker
的运行。这里她也非常贴心的给出了链接,点进去下载就好了。
这里我也给出我自己已经下载好的吧:提取码:14m1
下载好了之后安装,这个过程是不会让你选择路径的。因为安装包不大,所以也没什么影响,放心安装。
等全部安装完之后,就可以真正意义上打开Docker Desktop
的安装包了。
之后便是等待安装结束。Docker
安装文件给的提示是注销用户再重新登录即可,可能使用Linux
的人比较习惯这种操作。不过呢,既然是傻瓜式的Windows
,直接重启计算机就好了。(仅限开机较快的同学)
到这里,就能够打开Docker Desktop
正常使用了。
在Linux
系统中,直接修改/etc/docker/daemon.json
就够了。但是Windows
系统中可没有这个。所以直接打开任务栏中的Docker
,按照下图步骤进行设置
其中国内源可以选择:
# Docker国内镜像源
https://registry.docker-cn.com
# 网易Docker源
http://hub-mirror.c.163.com
当然你还可以选择阿里云的私人镜像站,都是非常不错的。这里就不一一介绍了。
最后,安装一下Git
客户端吧。在Windows
上如果不进行任何配置的话,只能使用Git Bash
。但是考虑到GitLab
一定要用到Git
客户端,所以也就安装了算了吧。
国内的话更推荐使用淘宝的Git-2.29.2.2镜像。
就是这样啦。
GitLab
的搭建接下来我们开始搭建GitLab
。如果你曾经看过我之前写的版本控制的另一种打开方式,那么你应该会稍微熟悉一些。这里还是简单说一下。
打开命令行(实际上是Git
客户端),输入:
docker pull twang2218/gitlab-ce-zh # 拉取镜像
下载时间很长,我们趁下载的时间准备docker-compose.yml
:
version: '3' # 版本号
services: # 开启服务
gitlab: # 服务名称
image: 'twang2218/gitlab-ce-zh:latest' # 使用镜像
restart: always
hostname: 'GitLab' # 主机名称(自定义)
environment: # 环境配置
TZ: 'Asia/Shanghai'
GITLAB_OMNIBUS_CONFIG: |
external_url 'http://192.168.1.112:8080'
gitlab_rails['gitlab_shell_ssh_port'] = 4022
unicorn['port'] = 8888
nginx['listen_port'] = 8080
ports: # 端口映射,格式为“本机IP:Docker镜像内部IP”
- '1080:8080'
- '1043:8443'
- '1022:22'
volumes: # 挂载卷
# 前面是Windows的地址所以斜杠向右;后面是Linux的地址所以向左
- D:\codes\docker\gitlab\config:/etc/gitlab
- D:\codes\docker\gitlab\data:/var/opt/gitlab
- D:\codes\docker\gitlab\logs:/var/log/gitlab
粘贴后记得保存哦。
等拉取完毕后,运行命令:
docker-compose up -d # 以后台进程的方式运行容器
于是,GitLab
就能够跑起来了。短暂地等待之后,使用“本机IP:端口号”的形式访问网站就好了。比如说我设置之后就可以使用:http://10.33.76.59:1080
进入GitLab
网站。
但是和我之前写的文章中有所不同的是,Linux
下进入容器只需要执行命令:
docker exec -it ${docker-container-id} /bin/bash
而在Windows
下进入容器内的时候并不能使用/bin/bash
,因为Windows
系统压根就没有这个地址。
所以就得使用:
docker exec -it ${docker-container-id} bash
也就是将/bin/bash
更换为bash
。
这下就能进去了。剩下的改密码什么的操作都和之前版本控制的另一种打开方式一模一样了。
是不是有点懂了呢?