导读

也不是所有的公司都崇尚Linux哲学,也有非常多的公司热衷于使用Windows当作服务器。所以这里介绍一下在如何在Windows下使用Docker搭建GitLab

安装Docker

在这里给出Docker安装包——提取码:ary4

Windows下安装Docker就非常难受了,需要解决非常多的约束。

系统更新

有些人非常讨厌更新所以使用一些脚本把更新关掉了。但是Docker必须要更新到特定版本才能安装,你气不气嘛。

如果你是Windows10,在“更新和安全 → \rightarrow Windows更新”,在里面找到“检查更新”按钮,点击即可。

到最后,会提示你重启以应用更新。当然,你可以选择现在重启,但是推荐把下面的步骤做完之后再更新。

添加“适用于LinuxWindows子系统”

在编辑这篇博客的时候,Docker已经出到了2.5.0,需要这样的设置。

打开“控制面板” → \rightarrow “程序” → \rightarrow “程序和功能” → \rightarrow “启用或关闭Windows功能” → \rightarrow “适用于LinuxWindows子系统”(最下方倒数第三个),勾选,然后点击“确定”。

操作截图

接着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界面

其中国内源可以选择:

# 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

这下就能进去了。剩下的改密码什么的操作都和之前版本控制的另一种打开方式一模一样了。

是不是有点懂了呢?

Logo

更多推荐