[DOCKER] [SAP] Create a development environment with NW AS ABAP Developer Edition (1)

Introduction

What are you doing in an environment where you write ABAP and create CDS views individually? I am currently subscribing to an ABAP environment. Of course, it costs a monthly fee, so I thought it would be nice if I had my own environment.

At that time, I came across such a video. SAP ABAP Trial in Docker | Windows Setup Guide [Tutorial] I had a Docker environment, so I decided to try it. The video is as short as less than 10 minutes, so it seems easy to get started.

What is NW AS ABAP Developer Edition?

This means that you can use ABAP development tools, Fiori Launchpad, Cloud Connector, roles, sample applications, etc. on an ABAP application server that runs on a database called ASE (not HANA!). Reference: AS ABAP 752 SP04, developer edition: NOW AVAILABLE

What i did

Since it's a big deal, I tried various things to see how much I could do in the trial environment.

--Install NW AS ABAP Developer Edition (this article) -Cloud Connector settings, registered in Cloud Platform Destination -Deploy apps developed on Cloud Platform --Open the app with Fiori Launchpad --Install ABAP Git

Install NW AS ABAP Developer Edition

environment

In the video, I explained using a Windows terminal with Docker installed. The environment I used is Ubuntu (18.04) on AWS EC2. The procedure is the same for Windows and Linux.


Configuration
image.png

Hardware requirements

The hardware requirements are described in this blog. ** 100 GB free disk space ** was the demon, and I had to add a volume to the EC2 instance.

Installation flow

For instructions, see Video and GitHub You can see it by looking at it. However, I was at a loss in a super-basic place that was not in the video, so I will focus on that (steps 1 and 2). After that, I think that it will go smoothly if you move your hand while watching the video. (Repeat, there is plenty of disk space!)

1. Clone Git repository

Create a folder of your choice and clone the Git repository (https://github.com/brandoncaulfield/sap-nw-abap-trial-docker-windows). The repository contains Dockerfile etc. for installing NW AS ABAP.

2. Download the installer for SAP NetWeaver AS ABAP Developer Edition

Download the SAP NetWeaver AS ABAP Developer Edition 7.52 SP04 rar file from here (https://developers.sap.com/trials-downloads.html). It is all from SAP ABAP AS Part1 to Part11. It will take some time, so please wait patiently. After downloading, unzip the Part 1 file using 7-zip or the like. Then, all the files are stored and the state is as follows. image.png

Create a new folder called sapdownloads in the folder cloned in 1. and store the unzipped one. image.png

3. Create a Docker image

Move the current directory to the folder you cloned in step 1 and enter the following command.

docker build -t nwabap:7.52 .

4. Increase the value of vm.max_map_count

This parameter is [Parameter for handling large database](https://groonga.org/ja/docs/reference/tuning.html#:~:text=vm.max_map_count,%E5%9B%9E%E6%95 % B0% E3% 82% 92% E5% 88% B6% E9% 99% 90% E3% 81% 97% E3% 81% BE% E3% 81% 99% E3% 80% 82).

sysctl -w vm.max_map_count=1000000

Confirm that vm.max_map_count has increased with the following command.

sysctl vm.max_map_count

4. Start the Docker container

docker run -p 8000:8000 -p 44300:44300 -p 3300:3300 -p 3200:3200 -h vhcalnplci --name nwabap752 -it nwabap:7.52 /bin/bash

When you execute the above command, it will be in the container. image.png ** About the port ** NW AS ABAP exposes four ports. Looking at the Dockerfile, it seems that there is also a port 8443 for Cloud Connector, and if it is open to the public, Cloud Connector may have been used as it is. (I will write it in another article, but this time I installed Cloud Connector in another container)

port Use
8000 HTTP
44300 HTTPS
3300 ABAP in Eclipse
3200 SAP GUI

5. Install NetWeaver AS ABAP

Start the installation with the following command.

/usr/sbin/uuidd
./install.sh

You will be asked if you agree with the license agreement, enter "yes". image.png You will be asked to set a password on the way, so enter a password of 8 digits or more. However, since the password that is actually used for login is ** Down1oad **, it is unknown what the password set here will be used for. The installation will take some time, so please be patient. When the installation is complete, the following message will be displayed. image.png

6. Start the server

Start the server with the following command.

su npladm
startsap ALL

image.png It is OK if the message ʻInstance on host vhcalnplci started` appears.

Connect with GUI and ADT

Connect with GUI

After the installation is complete, connect it to the GUI. The GUI installer is included in sapdownloads / client / SAPGUI4Windows (for Windows). I have NetWeaver installed on Ubuntu, but I'm using it by connecting from the GUI of a Windows PC.

The logon pad settings are as follows. image.png

Connect with ADT

The following blog describes how to set ADT. [ABAP] How to install ABAP Development Tools (ADT)

Post-installation work

You need to obtain and import the SAP NetWeaver license key. This is done by logging in to the GUI. See ** Important Post Installation Steps ** on GitHub (https://github.com/brandoncaulfield/sap-nw-abap-trial-docker-windows) for instructions.

Stop and restart the server

Stop

stopsap ALL --Stop the server
exit --Exit npladm
exit --Stop Docker container

Reboot

docker container start nwabap752  --Launch Docker container
docker container attach nwabap752 --Go inside the container
/usr/sbin/uuidd                   --Some shell
su npladm                         --Change user to npladm
startsap ALL                      --Start the server

Shell for start / stop

It's hard to type the above command every time, so I made a shell. (Error handling etc. are not considered. I don't know)

managesap


#!/bin/bash

start_sap(){
  #start container
  sudo docker container start docker container start nwabap752
  #start sap
  sudo docker exec -it nwabap752 /usr/sbin/uuidd 
  sudo docker exec -it nwabap752 su - npladm -c "startsap ALL"
}

stop_sap(){
  #stop sap
  sudo docker exec -it nwabap752 su - npladm -c "stopsap ALL"
  #stop container
  sudo docker container stop nwabap752
}

To run it, move to the directory where the shell is placed and execute the following command.

. managesap
start_sap  --Start sap
stop_sap   --Stop sap

What you can do so far

--I got my own NW AS ABAP server. --You can access from GUI and ADT to develop ABAP.

reference

-SAP ABAP Trial in Docker | Windows Setup Guide [Tutorial] (Video)

Recommended Posts

[SAP] Create a development environment with NW AS ABAP Developer Edition (1)
[SAP] Create a development environment with NW AS ABAP Developer Edition (2) Connect with Cloud Platform
Create a Spring Boot development environment with docker
I tried to create a java8 development environment with Chocolatey
I tried to create a padrino development environment with Docker
Create a Vue3 environment with Docker!
Build a PureScript development environment with Docker
Create a MySQL environment with Docker from 0-> 1
Create Spring Boot-gradle-mysql development environment with Docker
Let's create a Java development environment (updating)
Build a Wordpress development environment with Docker
Create a java web application development environment with docker for mac part2
Let's get started with Java-Create a development environment ②
Let's get started with Java-Create a development environment ①
[Memo] Create a CentOS 8 environment easily with Docker
[Windows] [IntelliJ] [Java] [Tomcat] Create a Tomcat9 environment with IntelliJ
Build a WordPress development environment quickly with Docker
[Win10] Build a JSF development environment with NetBeans
Build a Java development environment with VS Code
Build a development environment to create Ruby on Jets + React apps with Docker
Create a Java development environment using jenv on Mac
Let's create a gcloud development environment on a centos8 container
[Note] Create a java environment from scratch with docker
Create a Java, JavaScript team development environment (problem raising)
[Environment construction] Build a Java development environment with VS Code!
Create Chisel development environment with Windows10 + WSL2 + VScode + Docker
Create an AWS IoT EduKit development environment with Ubuntu 20.04 + VirtualBox 6.1
I made a development environment with rails6 + docker + postgreSQL + Materialize.
Build a "Spring Thorough Introduction" development environment with IntelliJ IDEA
Create a Java and JavaScript team development environment (gradle environment construction)
Create a playground with Xcode 12
[Be careful about changing the version of Xdebug! ] Create a development environment with Xdebug3 + docker + VS Code
Procedure for building a Rails application development environment with Docker [Rails, MySQL, Docker]
I tried to create a Spring MVC development environment on Mac
Install Rails in the development environment and create a new application
Build a development environment for Django + MySQL + nginx with Docker Compose
Create a development environment for Ruby 3.0.0 and Rails 6.1.0 on Ubuntu 20.04.1 LTS
Steps to build a Ruby on Rails development environment with Vagrant
Build a Node.js environment with Docker
Build a Tomcat 8.5 environment with Pleiades 4.8
Let's create Ubuntu environment with vmware
Create RUNTEQ's environment with Windows DockerDesktop
Prepare Java development environment with Atom
Create a database in a production environment
Create SolrCloud verification environment with Docker
Create Laravel environment with Docker (docker-compose)
Build jooby development environment with Eclipse
Create exceptions with a fluid interface
Create a Maven project with a command
Create a Spring Boot app development project with the cURL + tar command
A record of setting up a Java development environment with Visual Studio Code
Build a hot reload development environment with Docker-compose using Realize of Go
Creating a java web application development environment with docker for mac part1
I tried to build a Firebase application development environment with Docker in 2020
[Copy and paste] Build a Laravel development environment with Docker Compose Part 2
How to build a Ruby on Rails development environment with Docker (Rails 6.x)
Build a local development environment for Rails tutorials with Docker (Rails 6 + PostgreSQL + Webpack)
[Copy and paste] Build a Laravel development environment with Docker Compose Participation
Create a SPA with authentication function with Rails API mode + devise_token_auth + Vue.js 3 (Rails edition)
Build a development environment on AWS EC2 with CentOS7 + Nginx + pm2 + Nuxt.js
How to build a Ruby on Rails development environment with Docker (Rails 5.x)